Что такое lpvoid в c

Covert String to LPVOID and LPCWSTR in C++

I’m working with the winHTTP API in c++ and I have started to write a wrapper class for my application. For simplicity I have a number of functions that can take string parameters and use them in the winHTTP calls. However many of these require the data to be LPVOID or LPCWSTR. I can make it all work by making my wrapper functions take LPVOID or LPCWSTR parameters, but I would prefer string parameters. So is there any way to covert from sting to LPVOID/ LPCWSTR?

My attempts (below) just produced jibberish

Any help would be much appreciated

Что такое lpvoid в c. Смотреть фото Что такое lpvoid в c. Смотреть картинку Что такое lpvoid в c. Картинка про Что такое lpvoid в c. Фото Что такое lpvoid в c

4 Answers 4

Be careful for behavior of c_str(). The char* it returns is temporary, it will become invalid after the string is modified or destructed. Which may well happen before the _postData is used, possibly as soon as setPostData() returns. You’ll need to copy it.

The next problem is that c_str() doesn’t return a LPCWSTR, it is a LPCSTR. A cast cannot convert it, that produces Chinese. You’ll need to convert it to a Unicode string with for example MultiByteToWideChar().

Что такое lpvoid в c. Смотреть фото Что такое lpvoid в c. Смотреть картинку Что такое lpvoid в c. Картинка про Что такое lpvoid в c. Фото Что такое lpvoid в c

You can pass a LPWSTR to methods which expect a LPCWSTR. So you can work with strings.

btw, did you just try passing the string itself? I would expect that to work too and is better than getting a LPWSTR out.

So, in that case it would look like:

Of course there is a way to convert your string to something, You can take an address of and pass it as LPCWSTR or as LPVOID (it may be a different thing in case of LPVOID).

Now read the above statement carefully.

To know what to do, first You have to know what LPCWSTR and LPVOID are. I have a strange gut feeling those might be some pointers. MSDN might help. Try here for example

Then You have to know what the function, You pass those parameters to, is going to do with the memory those pointers point to. Is it going to just read it or maybe modify it? And how is it going to interpret it in case of LPVOID.

I can’t help You with LPVOID because I don’t know the API, but LPCWSTR suggests You have to create a null terminated wide string that will be just read. How about creating a wstring and using it’s c_str() method?

LPVOID is just void*, so you can convert any pointer to it as any pointer is convertible to void*. However, it does not guarantee that this operation will give valid result in terms of your expectations.

Simply, LPVOID is used in situations according to the following scheme

The problem is that you have to guarantee that i will stay alive for at least as long as the data is accessed/used through pv pointer. You have to consider if your w

So, you can do this:

but you have to guarantee that the string object you pass by reference as postData will stay alive for at least as long as _postData points to it. In fact, _postData points to internal location of returned by c_str()

In other words, the conversion from one pointer to another is not a problem itself. The problem is to guarantee proper objects lifetime and usage.

Источник

LPVOID не распознается в C++/CLI

Я пытаюсь использовать следующий код для преобразования собственной строки в управляемую строку в C++\CLI:

Первоначально я нашел код здесь :

Но когда я пытаюсь построить его, он выдает ошибку:

Есть идеи, как это исправить?

3 ответа

typedef void far *LPVOID LPVOID is the name and it’s defined as a far pointer to void. Как объявить этот dataype в Objective C. void far* my_pointer; дает мне ошибку.

У меня есть нативная функция внутри управляемой (c++/cli) библиотеки смешанного режима, которая вызывает отдельный нативный dll. Вот собственная функция, которая инициализирует некоторые указатели функций с помощью windows GetProcAdress: //in header static HMODULE hDll; static void.

LPVOID-это просто псевдоним для void *. LP означает «long pointer,», что является старомодным способом сказать «указатель машинного размера», либо 32, либо 64 bit в зависимости от процесса.

Просто используйте static_cast

В одном или нескольких заголовочных файлах где-то есть #define LPVOID (void *)

Вы не включили такой файл.

Приведение к (тем же cv-квалификаторам ) void* всегда неявно возможно, вы никогда не должны видеть, как приведение пытается это сделать. Ошибка связана с попыткой удалить const с помощью static_cast

Попробуйте это, которое также правильно обрабатывает встроенные символы NUL:

Похожие вопросы:

Я работаю с winHTTP API в c++ и начал писать класс-оболочку для своего приложения. Для простоты у меня есть ряд функций, которые могут принимать строковые параметры и использовать их в вызовах.

Я получаю следующую ошибку при попытке преобразовать код из C в C++: ошибка C2440: ‘initializing’ : не удается преобразовать из ‘LPVOID’ в ‘UINT (__cdecl *) (LPVOID, UINT,LPWSTR, UINT)’ Вот фрагмент.

Недавно я задал этот вопрос: создать пространство имен в c++/cli? и поэтому я пытаюсь создать свое собственное пространство имен в c++/cli. Но когда я использую одно и то же пространство имен в двух.

typedef void far *LPVOID LPVOID is the name and it’s defined as a far pointer to void. Как объявить этот dataype в Objective C. void far* my_pointer; дает мне ошибку.

У меня есть нативная функция внутри управляемой (c++/cli) библиотеки смешанного режима, которая вызывает отдельный нативный dll. Вот собственная функция, которая инициализирует некоторые указатели.

Мне нужно преобразовать std::string в LPVOID для создания PIMAGE_DOS_HEADER. Я уже протестировал некоторые кастинги, но мой PE-заголовок не подходит. std::ifstream file; file.open(C:/testDLL.enc);.

C:\Users\Vivek Гханчи>НГ ‘ng’ не распознается как внутренняя или внешняя команда, действующая программа или batch file. Я установил angular CLI, но он показывает мне, что ng не распознается, есть ли.

NodeJS версия: v10.0.0 npm версия: 5.6.0 После того, как я сделал ‘npm install-g @angular/cli’, он был успешно установлен Но когда я пытаюсь запустить команду ‘ng’: ‘ng’ не распознается как.

Источник

Windows Data Types

The data types supported by Windows are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements. For more information about the underlying C/C++ data types, see Data Type Ranges.

The following table contains the following types: character, integer, Boolean, pointer, and handle. The character, integer, and Boolean types are common to most C compilers. Most of the pointer-type names begin with a prefix of P or LP. Handles refer to a resource that has been loaded into memory.

For more information about handling 64-bit integers, see Large Integers.

A handle to an object.

This type is declared in WinNT.h as follows:

typedef PVOID HANDLE;

This type is declared in WinDef.h as follows:

typedef HANDLE HBITMAP;

This type is declared in WinDef.h as follows:

typedef HANDLE HBRUSH;

This type is declared in WinDef.h as follows:

typedef HANDLE HCOLORSPACE;

A handle to a dynamic data exchange (DDE) conversation.

This type is declared in Ddeml.h as follows:

typedef HANDLE HCONV;

A handle to a DDE conversation list.

This type is declared in Ddeml.h as follows:

typedef HANDLE HCONVLIST;

This type is declared in WinDef.h as follows:

typedef HICON HCURSOR;

This type is declared in WinDef.h as follows:

typedef HANDLE HDC;

A handle to DDE data.

This type is declared in Ddeml.h as follows:

typedef HANDLE HDDEDATA;

This type is declared in WinDef.h as follows:

typedef HANDLE HDESK;

A handle to an internal drop structure.

This type is declared in ShellApi.h as follows:

typedef HANDLE HDROP;

A handle to a deferred window position structure.

This type is declared in WinUser.h as follows:

typedef HANDLE HDWP;

This type is declared in WinDef.h as follows:

typedef HANDLE HENHMETAFILE;

This type is declared in WinDef.h as follows:

This type is declared in WinDef.h as follows:

typedef HANDLE HFONT;

A handle to a GDI object.

This type is declared in WinDef.h as follows:

typedef HANDLE HGDIOBJ;

A handle to a global memory block.

This type is declared in WinDef.h as follows:

typedef HANDLE HGLOBAL;

This type is declared in WinDef.h as follows:

typedef HANDLE HHOOK;

This type is declared in WinDef.h as follows:

typedef HANDLE HICON;

A handle to an instance. This is the base address of the module in memory.

HMODULE and HINSTANCE are the same today, but represented different things in 16-bit Windows.

This type is declared in WinDef.h as follows:

typedef HANDLE HINSTANCE;

A handle to a registry key.

This type is declared in WinDef.h as follows:

typedef HANDLE HKEY;

An input locale identifier.

This type is declared in WinDef.h as follows:

typedef HANDLE HKL;

A handle to a local memory block.

This type is declared in WinDef.h as follows:

typedef HANDLE HLOCAL;

This type is declared in WinDef.h as follows:

typedef HANDLE HMENU;

This type is declared in WinDef.h as follows:

typedef HANDLE HMETAFILE;

A handle to a module. The is the base address of the module in memory.

HMODULE and HINSTANCE are the same in current versions of Windows, but represented different things in 16-bit Windows.

This type is declared in WinDef.h as follows:

typedef HINSTANCE HMODULE;

A handle to a display monitor.

This type is declared in WinDef.h as follows:

if(WINVER >= 0x0500) typedef HANDLE HMONITOR;

A handle to a palette.

This type is declared in WinDef.h as follows:

typedef HANDLE HPALETTE;

This type is declared in WinDef.h as follows:

typedef HANDLE HPEN;

The return codes used by COM interfaces. For more information, see Structure of the COM Error Codes. To test an HRESULT value, use the FAILED and SUCCEEDED macros.

This type is declared in WinNT.h as follows:

typedef LONG HRESULT;

This type is declared in WinDef.h as follows:

typedef HANDLE HRGN;

A handle to a resource.

This type is declared in WinDef.h as follows:

typedef HANDLE HRSRC;

A handle to a DDE string.

This type is declared in Ddeml.h as follows:

typedef HANDLE HSZ;

This type is declared in WinDef.h as follows:

typedef HANDLE WINSTA;

This type is declared in WinDef.h as follows:

typedef HANDLE HWND;

This type is declared in WinDef.h as follows:

A signed integer type for pointer precision. Use when casting a pointer to an integer to perform pointer arithmetic.

This type is declared in BaseTsd.h as follows:

An 8-bit signed integer.

This type is declared in BaseTsd.h as follows:

typedef signed char INT8;

A 16-bit signed integer.

This type is declared in BaseTsd.h as follows:

typedef signed short INT16;

This type is declared in BaseTsd.h as follows:

typedef signed int INT32;

This type is declared in BaseTsd.h as follows:

typedef signed __int64 INT64;

A language identifier. For more information, see Language Identifiers.

This type is declared in WinNT.h as follows:

typedef WORD LANGID;

A locale identifier. For more information, see Locale Identifiers.

This type is declared in WinNT.h as follows:

typedef DWORD LCID;

A locale information type. For a list, see Locale Information Constants.

This type is declared in WinNls.h as follows:

typedef DWORD LCTYPE;

This type is declared in WinNls.h as follows:

typedef DWORD LGRPID;

This type is declared in WinNT.h as follows:

This type is declared in WinNT.h as follows:

A signed long type for pointer precision. Use when casting a pointer to a long to perform pointer arithmetic.

This type is declared in BaseTsd.h as follows:

This type is declared in BaseTsd.h as follows:

typedef signed int LONG32;

This type is declared in BaseTsd.h as follows:

typedef __int64 LONG64;

A message parameter.

This type is declared in WinDef.h as follows:

typedef LONG_PTR LPARAM;

This type is declared in WinDef.h as follows:

typedef BOOL far *LPBOOL;

This type is declared in WinDef.h as follows:

typedef BYTE far *LPBYTE;

This type is declared in WinDef.h as follows:

typedef DWORD *LPCOLORREF;

A pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef __nullterminated CONST CHAR *LPCSTR;

An LPCWSTR if UNICODE is defined, an LPCSTR otherwise. For more information, see Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

A pointer to a constant of any type.

This type is declared in WinDef.h as follows:

typedef CONST void *LPCVOID;

A pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST WCHAR *LPCWSTR;

This type is declared in WinDef.h as follows:

typedef DWORD *LPDWORD;

This type is declared in WinDef.h as follows:

typedef HANDLE *LPHANDLE;

This type is declared in WinDef.h as follows:

This type is declared in WinDef.h as follows:

typedef long *LPLONG;

A pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CHAR *LPSTR;

An LPWSTR if UNICODE is defined, an LPSTR otherwise. For more information, see Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

A pointer to any type.

This type is declared in WinDef.h as follows:

typedef void *LPVOID;

This type is declared in WinDef.h as follows:

typedef WORD *LPWORD;

A pointer to a null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef WCHAR *LPWSTR;

Signed result of message processing.

This type is declared in WinDef.h as follows:

typedef LONG_PTR LRESULT;

This type is declared in WinDef.h as follows:

typedef BOOL *PBOOL;

This type is declared in WinNT.h as follows:

typedef BOOLEAN *PBOOLEAN;

This type is declared in WinDef.h as follows:

typedef BYTE *PBYTE;

This type is declared in WinNT.h as follows:

typedef CHAR *PCHAR;

A pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST CHAR *PCSTR;

A PCWSTR if UNICODE is defined, a PCSTR otherwise. For more information, see Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

A pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST WCHAR *PCWSTR;

This type is declared in WinDef.h as follows:

typedef DWORD *PDWORD;

This type is declared in WinNT.h as follows:

typedef DWORDLONG *PDWORDLONG;

This type is declared in BaseTsd.h as follows:

typedef DWORD_PTR *PDWORD_PTR;

This type is declared in BaseTsd.h as follows:

typedef DWORD32 *PDWORD32;

This type is declared in BaseTsd.h as follows:

typedef DWORD64 *PDWORD64;

This type is declared in WinDef.h as follows:

typedef FLOAT *PFLOAT;

This type is declared in BaseTsd.h as follows:

This type is declared in WinNT.h as follows:

typedef HANDLE *PHANDLE;

This type is declared in WinDef.h as follows:

typedef HKEY *PHKEY;

This type is declared in WinDef.h as follows:

This type is declared in BaseTsd.h as follows:

typedef INT_PTR *PINT_PTR;

This type is declared in BaseTsd.h as follows:

typedef INT8 *PINT8;

This type is declared in BaseTsd.h as follows:

typedef INT16 *PINT16;

This type is declared in BaseTsd.h as follows:

typedef INT32 *PINT32;

This type is declared in BaseTsd.h as follows:

typedef INT64 *PINT64;

This type is declared in WinNT.h as follows:

typedef PDWORD PLCID;

This type is declared in WinNT.h as follows:

typedef LONG *PLONG;

This type is declared in WinNT.h as follows:

typedef LONGLONG *PLONGLONG;

This type is declared in BaseTsd.h as follows:

typedef LONG_PTR *PLONG_PTR;

This type is declared in BaseTsd.h as follows:

typedef LONG32 *PLONG32;

This type is declared in BaseTsd.h as follows:

typedef LONG64 *PLONG64;

A 32-bit pointer. On a 32-bit system, this is a native pointer. On a 64-bit system, this is a truncated 64-bit pointer.

This type is declared in BaseTsd.h as follows:

A 64-bit pointer. On a 64-bit system, this is a native pointer. On a 32-bit system, this is a sign-extended 32-bit pointer.

Note that it is not safe to assume the state of the high pointer bit.

This type is declared in BaseTsd.h as follows:

This type is declared in BaseTsd.h as follows:

#define POINTER_SIGNED __sptr

An unsigned pointer.

This type is declared in BaseTsd.h as follows:

#define POINTER_UNSIGNED __uptr

This type is declared in WinNT.h as follows:

typedef SHORT *PSHORT;

This type is declared in BaseTsd.h as follows:

typedef SIZE_T *PSIZE_T;

This type is declared in BaseTsd.h as follows:

typedef SSIZE_T *PSSIZE_T;

A pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

This type is declared in WinNT.h as follows:

typedef TBYTE *PTBYTE;

This type is declared in WinNT.h as follows:

typedef TCHAR *PTCHAR;

A PWSTR if UNICODE is defined, a PSTR otherwise. For more information, see Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

This type is declared in WinDef.h as follows:

typedef UCHAR *PUCHAR;

This type is declared in BaseTsd.h as follows:

This type is declared in WinDef.h as follows:

typedef UINT *PUINT;

This type is declared in BaseTsd.h as follows:

typedef UINT_PTR *PUINT_PTR;

This type is declared in BaseTsd.h as follows:

typedef UINT8 *PUINT8;

This type is declared in BaseTsd.h as follows:

typedef UINT16 *PUINT16;

This type is declared in BaseTsd.h as follows:

typedef UINT32 *PUINT32;

This type is declared in BaseTsd.h as follows:

typedef UINT64 *PUINT64;

This type is declared in WinDef.h as follows:

typedef ULONG *PULONG;

This type is declared in WinDef.h as follows:

typedef ULONGLONG *PULONGLONG;

This type is declared in BaseTsd.h as follows:

typedef ULONG_PTR *PULONG_PTR;

This type is declared in BaseTsd.h as follows:

typedef ULONG32 *PULONG32;

This type is declared in BaseTsd.h as follows:

typedef ULONG64 *PULONG64;

This type is declared in WinDef.h as follows:

typedef USHORT *PUSHORT;

A pointer to any type.

This type is declared in WinNT.h as follows:

typedef void *PVOID;

This type is declared in WinNT.h as follows:

typedef WCHAR *PWCHAR;

This type is declared in WinDef.h as follows:

typedef WORD *PWORD;

A pointer to a null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef WCHAR *PWSTR;

A 64-bit unsigned integer.

This type is declared as follows:

typedef unsigned __int64 QWORD;

A handle to a service control manager database. For more information, see SCM Handles.

This type is declared in WinSvc.h as follows:

typedef HANDLE SC_HANDLE;

A lock to a service control manager database. For more information, see SCM Handles.

This type is declared in WinSvc.h as follows:

typedef LPVOID SC_LOCK;

A handle to a service status value. For more information, see SCM Handles.

This type is declared in WinSvc.h as follows:

typedef HANDLE SERVICE_STATUS_HANDLE;

This type is declared in WinNT.h as follows:

typedef short SHORT;

The maximum number of bytes to which a pointer can point. Use for a count that must span the full range of a pointer.

This type is declared in BaseTsd.h as follows:

typedef ULONG_PTR SIZE_T;

This type is declared in BaseTsd.h as follows:

typedef LONG_PTR SSIZE_T;

A WCHAR if UNICODE is defined, a CHAR otherwise.

This type is declared in WinNT.h as follows:

A WCHAR if UNICODE is defined, a CHAR otherwise.

This type is declared in WinNT.h as follows:

This type is declared in WinDef.h as follows:

typedef unsigned char UCHAR;

An unsigned HALF_PTR. Use within a structure that contains a pointer and two small fields.

This type is declared in BaseTsd.h as follows:

An unsigned INT. The range is 0 through 4294967295 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned int UINT;

This type is declared in BaseTsd.h as follows:

This type is declared in BaseTsd.h as follows:

typedef unsigned char UINT8;

This type is declared in BaseTsd.h as follows:

typedef unsigned short UINT16;

An unsigned INT32. The range is 0 through 4294967295 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned int UINT32;

An unsigned INT64. The range is 0 through 18446744073709551615 decimal.

This type is declared in BaseTsd.h as follows:

typedef usigned __int 64 UINT64;

An unsigned LONG. The range is 0 through 4294967295 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned long ULONG;

A 64-bit unsigned integer. The range is 0 through 18446744073709551615 decimal.

This type is declared in WinNT.h as follows:

This type is declared in BaseTsd.h as follows:

An unsigned LONG32. The range is 0 through 4294967295 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned int ULONG32;

An unsigned LONG64. The range is 0 through 18446744073709551615 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned __int64 ULONG64;

This type is declared in Winternl.h as follows:

An unsigned SHORT. The range is 0 through 65535 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned short USHORT;

An update sequence number (USN).

This type is declared in WinNT.h as follows:

typedef LONGLONG USN;

This type is declared in WinNT.h as follows:

A 16-bit Unicode character. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef wchar_t WCHAR;

The calling convention for system functions.

This type is declared in WinDef.h as follows:

#define WINAPI __stdcall

CALLBACK, WINAPI, and APIENTRY are all used to define functions with the __stdcall calling convention. Most functions in the Windows API are declared using WINAPI. You may wish to use CALLBACK for the callback functions that you implement to help identify the function as a callback function.

A 16-bit unsigned integer. The range is 0 through 65535 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned short WORD;

A message parameter.

This type is declared in WinDef.h as follows:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Data typeDescription
APIENTRYThe calling convention for system functions.
This type is declared in WinDef.h as follows:
#define APIENTRY WINAPI
ATOMAn atom. For more information, see About Atom Tables.
This type is declared in WinDef.h as follows:
typedef WORD ATOM;
BOOLA Boolean variable (should be TRUE or FALSE).
This type is declared in WinDef.h as follows:
typedef int BOOL;
BOOLEANA Boolean variable (should be TRUE or FALSE).
This type is declared in WinNT.h as follows:
typedef BYTE BOOLEAN;
BYTEA byte (8 bits).
This type is declared in WinDef.h as follows:
typedef unsigned char BYTE;
CALLBACKThe calling convention for callback functions.
This type is declared in WinDef.h as follows:
#define CALLBACK __stdcall
CALLBACK, WINAPI, and APIENTRY are all used to define functions with the __stdcall calling convention. Most functions in the Windows API are declared using WINAPI. You may wish to use CALLBACK for the callback functions that you implement to help identify the function as a callback function.
CCHARAn 8-bit Windows (ANSI) character.
This type is declared in WinNT.h as follows:
typedef char CCHAR;
CHARAn 8-bit Windows (ANSI) character. For more information, see Character Sets Used By Fonts.
This type is declared in WinNT.h as follows:
typedef char CHAR;
COLORREFThe red, green, blue (RGB) color value (32 bits). See COLORREF for information on this type.
This type is declared in WinDef.h as follows:
typedef DWORD COLORREF;
CONSTA variable whose value is to remain constant during execution.
This type is declared in WinDef.h as follows:
#define CONST const
DWORDA 32-bit unsigned integer. The range is 0 through 4294967295 decimal.
This type is declared in IntSafe.h as follows:
typedef unsigned long DWORD;
DWORDLONGA 64-bit unsigned integer. The range is 0 through 18446744073709551615 decimal.
This type is declared in IntSafe.h as follows:
typedef unsigned __int64 DWORDLONG;
DWORD_PTRAn unsigned long type for pointer precision. Use when casting a pointer to a long type to perform pointer arithmetic. (Also commonly used for general 32-bit parameters that have been extended to 64 bits in 64-bit Windows.)
This type is declared in BaseTsd.h as follows:
typedef ULONG_PTR DWORD_PTR;
DWORD32A 32-bit unsigned integer.
This type is declared in BaseTsd.h as follows:
typedef unsigned int DWORD32;
DWORD64A 64-bit unsigned integer.
This type is declared in BaseTsd.h as follows:
typedef unsigned __int64 DWORD64;
FLOATA floating-point variable.
This type is declared in WinDef.h as follows:
typedef float FLOAT;
HACCELA handle to an accelerator table.
This type is declared in WinDef.h as follows:
typedef HANDLE HACCEL;
HALF_PTRHalf the size of a pointer. Use within a structure that contains a pointer and two small fields.
This type is declared in BaseTsd.h as follows:

C++
HANDLE