• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發(fā)教程 > 詳細頁面

        Win32分類與.net分類的對應表

        Win32分類與.net分類的對應表

        更新時間:2022-04-30 文章作者:未知 信息來源:網(wǎng)絡 閱讀次數(shù):

        習慣用C#寫東西,但平時又會碰到很多要用win32 API的地方,所以經(jīng)常要用DllImport,但win32函數(shù)的類型寫法是很龐雜的,相信為之困擾的不止我一個,現(xiàn)在我整理一份我個人的理解如下,希望高人不吝賜教。
        我的基本原則有如下幾點:
        1、下面都是針對32位系統(tǒng)的,所以int是32位.long也是32位;
        2、各種句柄類的(H開頭),我認為一律是System.IntPtr,到目前為止沒發(fā)現(xiàn)出錯;如果哪位在使用中出錯,請指出;
        3、LP和P,我實在不懂(對C++不太了解),對于LP和P開頭的函數(shù),如果是和STR有關的,一律寫為System.String,像PLCID這樣指向什么東西的,寫為System.UInt32(因為指向另一個地址,那就是指針,指針是32位吧),int之類的數(shù)值型,那我就寫為int[],以方便.net程序引用(寫成System.UInt32的話,給API調(diào)用應該也不會出錯,但.net程序就不好引用了)



        如有意見,歡迎指教。謝謝





        BOOL=System.Int32
        BOOLEAN=System.Int32
        BYTE=System.UInt16
        CHAR=System.Int16
        COLORREF=System.UInt32
        DWORD=System.UInt32
        DWORD32=System.UInt32
        DWORD64=System.UInt64
        FLOAT=System.Float
        HACCEL=System.IntPtr
        HANDLE=System.IntPtr
        HBITMAP=System.IntPtr
        HBRUSH=System.IntPtr
        HCONV=System.IntPtr
        HCONVLIST=System.IntPtr
        HCURSOR=System.IntPtr
        HDC=System.IntPtr
        HDDEDATA=System.IntPtr
        HDESK=System.IntPtr
        HDROP=System.IntPtr
        HDWP=System.IntPtr
        HENHMETAFILE=System.IntPtr
        HFILE=System.IntPtr
        HFONT=System.IntPtr
        HGDIOBJ=System.IntPtr
        HGLOBAL=System.IntPtr
        HHOOK=System.IntPtr
        HICON=System.IntPtr
        HIMAGELIST=System.IntPtr
        HIMC=System.IntPtr
        HINSTANCE=System.IntPtr
        HKEY=System.IntPtr
        HLOCAL=System.IntPtr
        HMENU=System.IntPtr
        HMETAFILE=System.IntPtr
        HMODULE=System.IntPtr
        HMONITOR=System.IntPtr
        HPALETTE=System.IntPtr
        HPEN=System.IntPtr
        HRGN=System.IntPtr
        HRSRC=System.IntPtr
        HSZ=System.IntPtr
        HWINSTA=System.IntPtr
        HWND=System.IntPtr
        INT=System.Int32
        INT32=System.Int32
        INT64=System.Int64
        LONG=System.Int32
        LONG32=System.Int32
        LONG64=System.Int64
        LONGLONG=System.Int64
        LPARAM=System.IntPtr
        LPBOOL=System.Int16[]
        LPBYTE=System.UInt16[]
        LPCOLORREF=System.UInt32[]
        LPCSTR=System.String
        LPCTSTR=System.String
        LPCVOID=System.UInt32
        LPCWSTR=System.String
        LPDWORD=System.UInt32[]
        LPHANDLE=System.UInt32
        LPINT=System.Int32[]
        LPLONG=System.Int32[]
        LPSTR=System.String
        LPTSTR=System.String
        LPVOID=System.UInt32
        LPWORD=System.Int32[]
        LPWSTR=System.String
        LRESULT=System.IntPtr
        PBOOL=System.Int16[]
        PBOOLEAN=System.Int16[]
        PBYTE=System.UInt16[]
        PCHAR=System.Char[]
        PCSTR=System.String
        PCTSTR=System.String
        PCWCH=System.UInt32
        PCWSTR=System.UInt32
        PDWORD=System.Int32[]
        PFLOAT=System.Float[]
        PHANDLE=System.UInt32
        PHKEY=System.UInt32
        PINT=System.Int32[]
        PLCID=System.UInt32
        PLONG=System.Int32[]
        PLUID=System.UInt32
        PSHORT=System.Int16[]
        PSTR=System.String
        PTBYTE=System.Char[]
        PTCHAR=System.Char[]
        PTSTR=System.String
        PUCHAR=System.Char[]
        PUINT=System.UInt32[]
        PULONG=System.UInt32[]
        PUSHORT=System.UInt16[]
        PVOID=System.UInt32
        PWCHAR=System.Char[]
        PWORD=System.Int16[]
        PWSTR=System.String
        REGSAM=System.UInt32
        SC_HANDLE=System.IntPtr
        SC_LOCK=System.IntPtr
        SHORT=System.Int16
        SIZE_T=System.UInt32
        SSIZE_=System.UInt32
        TBYTE=System.Char
        TCHAR=System.Char
        UCHAR=System.Byte
        UINT=System.UInt32
        UINT32=System.UInt32
        UINT64=System.UInt64
        ULONG=System.UInt32
        ULONG32=System.UInt32
        ULONG64=System.UInt64
        ULONGLONG=System.UInt64
        USHORT=System.UInt16
        WORD=System.UInt16
        WPARAM=System.IntPtr






        附:舉一個聲明API的例子

        [ DllImport( "Kernel32.dll" )]
        public static extern System.UInt32 VirtualAllocEx(
        System.IntPtr hProcess,
        System.UInt32 lpAddress,
        System.UInt32 dwSize,
        System.UInt32 flAllocationType,
        System.UInt32 flProtect

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統(tǒng)下載排行

        主站蜘蛛池模板: 国产婷婷综合丁香亚洲欧洲| 亚洲国产精品免费在线观看| 青青青视频免费观看| 在线观看免费宅男视频| 精品国产成人亚洲午夜福利| 一个人免费观看www视频在线| 亚洲免费人成视频观看| 亚洲第一成年免费网站| 亚洲综合欧美色五月俺也去| 日本免费人成黄页在线观看视频| 精品国产亚洲第一区二区三区| 国产嫩草影院精品免费网址| 一级a性色生活片久久无少妇一级婬片免费放 | 亚洲男女内射在线播放| 久久免费观看视频| 亚洲国产综合专区电影在线| 免费观看国产网址你懂的| 亚洲国产AV无码一区二区三区 | 亚洲综合激情视频| 91香蕉视频免费| 人人爽人人爽人人片A免费 | 美女视频黄的全免费视频网站| 亚洲精品成a人在线观看☆| 亚洲国产精品综合久久网络| 国偷自产一区二区免费视频| 亚洲一区二区三区高清视频| 免费精品国产自产拍观看| 免费无码又爽又刺激一高潮| 亚洲日韩在线视频| 亚洲成?Ⅴ人在线观看无码| 精品视频一区二区三区免费| 亚洲一欧洲中文字幕在线| 亚洲国产精品丝袜在线观看| 精品一区二区三区无码免费视频| 亚洲国产精品嫩草影院| 亚洲精品无码专区久久久| 亚洲免费网站观看视频| 中文字幕免费在线看电影大全| 亚洲一区在线视频| 亚洲男同帅GAY片在线观看| 成人免费午夜无码视频|