Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The following data types are recognized by MIDL.
Type | Description |
---|---|
boolean | Data item that can have the value True or False. The size maps to VARIANT_BOOL. |
char | 8-bit signed data item. |
double | 64-bit IEEE floating-point number. |
int | Signed integer, whose size is system dependent. |
float | 32-bit IEEE floating point number. |
long | 32-bit signed integer. |
short | 16-bit signed integer. |
wchar_t | Unicode character accepted only for 32-bit type libraries. |
BSTR | Length-prefixed string, as described in Dispatch Interface and API Functions. |
CURRENCY | 8-byte, fixed-point number. |
DATE | 64-bit floating-point fractional number of days since December 30, 1899. |
DECIMAL | 96-bit unsigned binary integer scaled by a variable power of 10. Provides a size and scale for a number. |
SCODE | Built-in error type that corresponds to VT_ERROR. Essentially identical to an HRESULT. |
VARIANT | One of the variant data types as described in Dispatch Interface and API Functions. |
IDispatch * | Pointer to the IDispatch interface. |
IUnknown * | Pointer to the IUnknown interface. (Any OLE interface can be represented by its IUnknown interface.) |
SAFEARRAY(TypeName) | TypeName is any of the above types. Array of these types. |
TypeName* | TypeName is any of the above types. Pointer to a type. |
void | Allowed only as return type for a function, or in a function parameter list to indicate no arguments. |
HRESULT | Return type used for reporting error information in interfaces, as described in COM Programmer's Reference. |
LPWSTR | Unicode string accepted only for 32-bit type libraries. |
LPSTR | Zero-terminated string. |
Not all of the above types can be marshaled by Automation to another process or thread. The list of types that can be marshaled are called Automation compatible types, and are listed under the oleautomation attribute description.
The keyword unsigned can be specified before int, char, short, and long.