VB API simple start (4) - Data type

xiaoxiao2021-03-06  20

In this article, we focus on the part of the parameter list in the API function declaration.

We know that the data type of each programming language is not the same, such as the INT and VB in C, seeing the names, but their own memory cells are completely different .vb in Integer It is a 2 byte. So if an API function original is a C's int type you use Integer to declare it, there will be some unexpected errors. The correct approach is to declare it with long. Let's take some Common type conversion:

Type C language type VB Bytes const char * Long4__int16Integer2__int32Long4__int64Double8__int8Byte1boolLong4floatSingle4doubleDouble8shortInteger2intLong4charByte1unsigned intLong4charByte1unsigned charByte1unsigned charByte1unsigned shortInteger2unsigned intLong4VARIANT_BOOLInteger2wchar_tInteger2FARPROCLong4DWORDLong4DWORDLong4DWORDLong4LONGLong4DWORDLong4WORDInteger2WORDInteger2WORDInteger2WCHAR / BYTEinteger / byte2 / 1DWORDLong4unsigned long intLong4intLong4unsigned charByte1unsigned charByte1OLECHAR * Long4unsigned charByte1unsigned charByte1DWORDLong4FARPROCLong4FARPROCLong4DWORDLong4charByte1charByte1WORDInteger2longLong4void * Long4CMC_sint32Long4CMC_uint32Long4CMC_uint32Long4CMC_uint32Long4shortInteger2long intLong4charByte1char * Long4CMC_uint32Long4unsigned short intInteger2unsigned long intLong4FARPROCLong4FARPROCLong4DWORDLong4DWORDLong4CYLong4intLong4DWORDLong4LONGLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4floatSingle4doubleDouble8FARP ROCLong4FARPROCLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4DWORDLong4WORDInteger2DWORDLong4DWORDLong4DWORDLong4CHARByte1DESKTOPENUMPROCALong4FARPROCLong4FARPROCLong4unsigned intLong4PVOIDLong4LONGLong4FARPROCLong4doubleDouble8doubleDouble8DWORDLong4FARPROCLong4DWORDLong4unsigned longLong4unsigned __int64Double8EDITWORDBREAKPROCALong4FARPROCLong4FARPROCLong4FARPROCLong4FARPROCLong4FARPROCLong4unsigned longLong4INTLong4 * Long4BY

TEByte1intLong4WORDInteger2unsigned longLong4floatSingle4floatSingle4DWORDLong4FONTENUMPROCALong4FARPROCLong4FARPROCLong4ULONGLong4__int64Double8WORDInteger2void * Long4longLong4longLong4HANDLELong4FARPROCLong4FARPROCLong4unsigned intLong4HANDLELong4ULONGLong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4PVOIDLong4HANDLELong4HANDLELong4ULONGLong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4LPVOIDLong4void * Long4HANDLELong4HANDLELong4HANDLELong4HICONLong4void * Long4HANDLELong4HANDLELong4HANDLELong4PVOIDLong4HANDLELong4HANDLELong4HANDLELong4DWORDLong4void * Long4HANDLELong4void * Long4intLong4HANDLELong4ULONGLong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4struct _IMAGELIST NEAR * Long4DWORDLong4DWORDLong4HANDLELong4PVOIDLong4HANDLELong4LPVOIDLong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4void * Long4void * Long4HANDLELong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4void * Long4HGLOBALLong4FARPROCLong4HANDLELong4HANDLELong4DWORDLong4HANDLELong4HANDLELong4DWORDLong4LONGLon g4HANDLELong4ULONGLong4HANDLELong4HANDLELong4WORDInteger2PVOIDLong4PVOIDLong4void * Long4HANDLELong4HANDLELong4HANDLELong4struct _TREEITEM FAR * Long4ULONGLong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4HANDLELong4__int64Double8void * Long4void * Long4unsigned shortInteger2intLong4intLong4WORDInteger2ULONGLong4LONGLong4intLong4WORDInteger2WORDInteger2LONGLONGDouble8DWORDLong4LONGLong4LONGLong4DWORDLong4unsigned longLong4FARPROCLong4FARPROCLong4FARPROCLong4HANDLELong4longLong4longLong4long doubleDouble8longLong4__int64Double8hyperDouble8longLong4IAuthenticate * Long4IBindCtx * Long4union tagBINDPTR * Long4BOOL * Long4LPRECTLong4unsigned char * Long4LPCRECTLong4const CHAR * Long4const DLGTEMPLATE * Long4const DLGTEMPLATE * Long4const FOLDERSETTINGS * Long4CHAR * Long4c

onst IID * Long4const ITEMIDLIST * Long4CLSID * Long4MENUITEMINFOA const * Long4MENUITEMINFOW const * Long4const MMCKINFO * Long4const MMIOINFO * Long4const OLECHAR * Long4DWORD * Long4const PROPSHEETHEADERA * Long4const PROPSHEETHEADERW * Long4const PROPSHEETPAGEA * Long4const PROPSHEETPAGEW * Long4REBARBANDINFOA const * Long4REBARBANDINFOW const * Long4const RECT * Long4const RECTL * Long4PRTL_CRITICAL_SECTIONLong4SCROLLINFO const * Long4const SHITEMID * Long4const CHAR * Long4const TBBUTTON * Long4const TCHAR * Long4const void * Long4const WAVEFORMATEX * Long4const WCHAR * Long4const WCHAR * Long4DWORD * Long4DWORD * Long4DWORD * Long4D3DCOLORMODEL * Long4DWORD * Long4DWORD * Long4DWORD * Long4float * Long4DESC_CHAR * Long4DLGITEMTEMPLATE * Long4DLGITEMTEMPLATE * Long4DLGTEMPLATE * Long4DLGTEMPLATE * Long4DWORD * Long4DWORD * Long4SBinaryArray * Long4IEnumCATEGORYINFO * Long4PFIBER_START_ROUTINELong4FMTID * Long4ACCELERATEABSDI * Long4DISMISSMODELESS * Long4long * Long4long * Long4GUID * Long4HANDLE * Long4IID * Long4int * Long4WORD * Long4unsigned long * Long4long * Long4VOID ** Long4PVOIDLo ng4PVOIDLong4DWORD * Long4NMSELCHANGE * Long4OLECHAR * Long4WORD * Long4const char ** Long4LPMAPIFORMINFO * Long4SIZE * Long4CHAR * Long4IStream * Long4LPSTRLong4PTHREAD_START_ROUTINELong4LPSTRLong4unsigned long * Long4VARIANT * Long4LPBYTELong4void * Long4WCHAR * Long4WORD * Long4WCHAR * Long4LONGLong4unsigned longLong4DWORDLong4longLong4unsigned longLong4charByte1unsigned longLong4LARGE_INTEGERDouble8intLong4DISPIDLong4doubleDouble8DWORDLong4FARPROCLong4FARPROCLong4void * Long4CHAR * Long4LONGLong4WCHAR * Long4longLong4FARPROCLong4VARIANT_BOOLInteger2DWORDLong4VARIANT_BOOLInteger2UINTLong4VARIANT_BOOLInteger2floatSingle4LONGLong4longLong4floatSingle4LONGLong4longLong4floatSingle4LONGLong4longLong4floatSingle4LONGLong4longLong4WCHARInteger2ACL * Long4WORDInteger2IAVIEditStream

* Long4IAVIFile * Long4IAVIStream * Long4IAVIStreaming * Long4WORD * Long4BOOL * Long4BOOLEAN * Long4BYTE * Long4const CHAR * Long4COMBOBOXEXITEMA const * Long4COMBOBOXEXITEMW const * Long4CHAR * Long4CHAR * Long4const IUniformResourceLocatorA * Long4IConnectionPoint * Long4IConnectionPointContainer * Long4PRTL_CRITICAL_SECTIONLong4const CHAR * Long4char * Long4const URLINVOKECOMMANDINFOA * Long4const URLINVOKECOMMANDINFOW * Long4const WCHAR * Long4const WCHAR * Long4LONGLong4DLGITEMTEMPLATE * Long4DLGITEMTEMPLATE * Long4DWORD * Long4DWORDLONG * Long4IEnumConnectionPoints * Long4IEnumConnections * Long4FLOAT * Long4const unsigned char * Long4IGetFrame * Long4HANDLE * Long4HKEY * Long4int * Long4IUniformResourceLocatorA * Long4LARGE_INTEGER * Long4PDWORDLong4long * Long4LONGLONG * Long4LUID * Long4const MIDL_STUB_DESC * Long4void * Long4LONG * Long4WORDInteger2PROPENUMPROCALong4FARPROCLong4PROPENUMPROCEXALong4FARPROCLong4FARPROCLong4FARPROCLong4ULONGLong4SCODE * Long4WORD * Long4DWORD * Long4short * long4pvoidlong4size * long4char * long4char * long4unsigned char * long4lpstrlong4cha r * Long4void * Long4intLong4LPSTRLong4UCHAR * Long4unsigned int * Long4ULONG * Long4ULONGLONG * Long4USHORT * Long4void * Long4WCHAR * Long4WCHAR * Long4WORD * Long4WSH_NBP_NAME * Long4WSH_NBP_NAME * Long4WSH_NBP_NAME * Long4WCHAR * Long4CLSID * Long4FMTID * Long4GUID * Long4IID * Long4ACCESS_MASKLong4DWORDLong4shortInteger2void * Long4void * Long4I_RPC_HANDLELong4unsigned char * Long4I_RPC_HANDLE * Long4void * Long4unsigned longLong4void * Long4void * Long4longLong4unsigned longLong4HANDLELong4LPVOIDLong4charByte1longLong4DWORDLong4doubleDouble8long intLong4WORDInteger2DWORDLong4FARPROCLong4DWORDLong4floatSingle4shortInteger2shortInteger2shortInteger2intLong4signed charByte1intLong4longLong4shortInteger2unsigned intLong4signed longLong4longLong4OLECHAR ** Long4u_intLong4HANDLE * Long4__int64Do

uble8unsigned charByte1unsigned charByte1unsigned charByte1doubleDouble8doubleDouble8void * Long4SQLHANDLELong4SQLHANDLELong4SQLHANDLELong4SQLHANDLELong4HWNDLong4longLong4unsigned charByte1void * Long4floatSingle4SQLSMALLINTInteger2charByte1shortInteger2SQLCHARByte1unsigned charByte1unsigned charByte1unsigned __int64Double8unsigned longLong4unsigned shortInteger2unsigned charByte1wchar_tInteger2shortInteger2longLong4longLong4DWORDLong4short intInteger2short intInteger2TCHARByte / Integer1 / 2TCHARByte / Integer1 / 2longLong4FARPROCLong4FARPROCLong4FARPROCLong4WORDInteger2unsigned charByte1unsigned intLong4unsigned longLong4unsigned shortInteger2unsigned charByte1unsigned long intLong4unsigned long intLong4unsigned intLong4unsigned longLong4unsigned longLong4unsigned __int64Double8unsigned charByte1unsigned intLong4unsigned longLong4unsigned shortInteger2BYTE_BLOB * Long4DWORD_BLOB * Long4FLAGGED_BYTE_BLOB * Long4FLAGGED_WORD_BLOB * Long4WORD_BLOB * Long4unsigned shortinteger2unsigned shortinteger2longlongdo uble8unsigned short intInteger2unsigned short intInteger2char * Long4VARIANTVariant shortInteger2VARIANTVariant unsigned shortInteger2void * Long4wchar_tInteger2unsigned shortInteger2wchar_tInteger2wchar_tInteger2LPVOIDLong4FARPROCLong4FARPROCLong4wchar_tInteger2userSTGMEDIUM * Long4FLAGGED_WORD_BLOB * Long4userCLIPFORMAT * Long4userFLAG_STGMEDIUM * Long4RemotableHandle * Long4userHBITMAP * Long4RemotableHandle * Long4RemotableHandle * Long4userHENHMETAFILE * Long4RemotableHandle * Long4userHGLOBAL * Long4RemotableHandle * Long4RemotableHandle * Long4userHMETAFILE * Long4userHMETAFILEPICT * Long4userHPALETTE * Long4RemotableHandle * Long4RemSNB * Long4userSTGMEDIUM * Long4farProClong4 * long4unsigned shortinteger2uintlong4dwordlong4

转载请注明原文地址:https://www.9cbs.com/read-44200.html

New Post(0)