P/Invoke应用

Platform Invoke:提供了一种从托管代码访问并调用非托管代码的方法,应用场景包括从托管代码直接调用Win32 API或其他一些非托管代码实现的库等。

基本类型映射

** C/C++ ** C# 备注
HANDLE, LPDWORD, LPVOID, void* IntPtr
LPCTSTR, LPCTSTR, LPSTR, char, const char, Wchar_t*, LPWSTR String [in], StringBuilder [in, out]
DWORD, unsigned long, Ulong UInt32, [MarshalAs(UnmanagedType.U4)]
bool bool
LP [In] ref
SIZE_T uint
LPDWORD out uint
LPTSTR [Out] StringBuilder
PULARGE_INTEGER out ulong
WORD Uint16
Byte, unsigned char Byte
Short Int16
Long, int Int32
float single
double double
NULL pointer IntPtr.Zero
Uint Uint32

结构体映射

winsiggen.exe(P/Invoke Interop Assistant version 1.0)

posted @ 2020-10-14 16:39  wesson2019  阅读(90)  评论(0编辑  收藏  举报