破解常用斷點設置API函數原型——常用函數彙總

HWND (

    LPCTSTR lpClassName,	// 指向註冊窗口類名的指針
    LPCTSTR lpWindowName,	// 指向窗口名的指針
    DWORD dwStyle,		// 窗口樣式
    int x,		// 窗口水平位置
    int y,		// 窗口垂直位置
    int nWidth,		// 窗口寬度
    int nHeight,		// 窗口高度
    HWND hWndParent,	// 父窗口句柄
    HMENU hMenu,		// 菜單句柄
    HANDLE hInstance,	// 應用程序實例句柄
    LPVOID lpParam		// 指向創建窗口所需的數據
   );
   
如果成功就返回新窗口的句柄;失敗則返回NULL值

HWND (

    DWORD dwExStyle,	// 擴展窗口樣式
    LPCTSTR lpClassName,	// 指向註冊窗口類名的指針
    LPCTSTR lpWindowName,	// 指向窗口名的指針
    DWORD dwStyle,		// 窗口樣式
    int x,		// 窗口水平位置
    int y,		// 窗口垂直位置
    int nWidth,		// 窗口寬度
    int nHeight,		// 窗口高度
    HWND hWndParent,	// 父窗口句柄
    HMENU hMenu,		// 菜單句柄
    HINSTANCE hInstance,	// 應用程序實例句柄
    LPVOID lpParam 	// 指向創建窗口所需的數據
   );
   
如果成功就返回新窗口的句柄;失敗則返回NULL值

BOOL (

    HWND hWnd,		// 窗口句柄
    int nCmdShow 		// 窗口顯示狀態
   );	
   
如果先前的窗口可見就返回非零值;如果先前的窗口隱藏則返回零值

BOOL (

    HWND hWnd 		// 窗口句柄 
   );

如果成功就返回非零值;失敗則返回零值

int (

    HWND hWnd,		// 窗口或文本控件句柄
    LPTSTR lpString,	// 緩衝區地址
    int nMaxCount 		// 最大字符數
   );
   
如果成功就返回文本長度;失敗則返回零值

int (

    HWND hWnd,		// 父窗口句柄
    LPCTSTR lpText,	// 消息框文本地址
    LPCTSTR lpCaption,	// 消息框標題地址  
    UINT uType 		// 消息框樣式
   );

如果失敗則返回零值;如果成功,返回值爲如下之一:
IDABORT		Abort 按鈕被選擇
IDCANCEL		Cancel 按鈕被選擇
IDIGNORE		Ignore 按鈕被選擇
IDNO		No 按鈕被選擇
IDOK		OK 按鈕被選擇
IDRETRY		Retry 按鈕被選擇
IDYES		Yes 按鈕被選擇

int (

    HWND hWnd,		// 父窗口句柄
    LPCTSTR lpText,	// 消息框文本地址
    LPCTSTR lpCaption,	// 消息框標題地址 
    UINT uType,		// 消息框樣式
    WORD wLanguageId 	// 語言標識
   );	

如果失敗則返回零值;如果成功,返回值爲如下之一:
IDABORT		Abort 按鈕被選擇
IDCANCEL		Cancel 按鈕被選擇
IDIGNORE		Ignore 按鈕被選擇
IDNO		No 按鈕被選擇
IDOK		OK 按鈕被選擇
IDRETRY		Retry 按鈕被選擇
IDYES		Yes 按鈕被選擇

int (

    LPMSGBOXPARAMS lpMsgBoxParams	// 消息框參數結構地址
   );
   
如果失敗則返回零值;如果成功,返回值爲如下之一:
IDABORT		Abort 按鈕被選擇
IDCANCEL		Cancel 按鈕被選擇
IDIGNORE		Ignore 按鈕被選擇
IDNO		No 按鈕被選擇
IDOK		OK 按鈕被選擇
IDRETRY		Retry 按鈕被選擇
IDYES		Yes 按鈕被選擇

BOOL (

    UINT uType 		// 聲音類型  
   );	

聲音類型:
0xFFFFFFFF		Standard beep using the computer speaker
MB_ICONASTERISK		SystemAsterisk
MB_ICONEXCLAMATION		SystemExclamation
MB_ICONHAND		SystemHand
MB_ICONQUESTION		SystemQuestion
MB_OK			SystemDefault

如果成功就返回文本長度;失敗則返回零值

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCTSTR lpTemplate,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 對話框處理函數指針 
   );	
 
如果成功就返回nResult參數,用於EndDialog結束對話框;失敗則返回-1

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCTSTR lpTemplateName,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 對話框處理函數指針  
    LPARAM dwInitParam 	// 初始化值
   );
   
如果成功就返回nResult參數,用於EndDialog結束對話框;失敗則返回-1

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPDLGTEMPLATE lpTemplate,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 對話框處理函數指針 
   );	
 
如果成功就返回nResult參數,用於EndDialog結束對話框;失敗則返回-1

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCDLGTEMPLATE lpTemplateName,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 對話框處理函數指針  
    LPARAM dwInitParam 	// 初始化值
   );
   
如果成功就返回nResult參數,用於EndDialog結束對話框;失敗則返回-1

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCTSTR lpTemplate,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 對話框處理函數指針 
   );	
 
如果成功就返回對話框句柄;失敗則返回NULL

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCTSTR lpTemplateName,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 對話框處理函數指針  
    LPARAM dwInitParam 	// 初始化值
   );
   
如果成功就返回對話框句柄;失敗則返回NULL

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPDLGTEMPLATE lpTemplate,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 對話框處理函數指針 
   );	
 
如果成功就返回對話框句柄;失敗則返回NULL

int (

    HINSTANCE hInstance,	// 應用程序實例句柄
    LPCDLGTEMPLATE lpTemplateName,	// 對話框模板指針
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 對話框處理函數指針  
    LPARAM dwInitParam 	// 初始化值
   );
   
如果成功就返回對話框句柄;失敗則返回NULL

UINT (

    HWND hDlg,		// 對話框句柄
    int nIDDlgItem,	// 控件標識
    LPTSTR lpString,	// 文本緩衝區指針
    int nMaxCount 		// 最大字符數
   );
   
如果成功就返回文本長度;失敗則返回零值

UINT (

    HWND hDlg,		// 對話框句柄
    int nIDDlgItem,	// 控件標識
    BOOL *lpTranslated,	// 接收成功/失敗指示的指針
    BOOL bSigned 		// 指定是有符號數還是無符號數
   );
   
如果成功,lpTranslated被設置爲TRUE,返回文本對應的整數值;如果失敗,lpTranslated被設置爲FALSE,返回值爲零

HANDLE (

    UINT uFormat 		// 剪貼板格式  
   );
   
如果成功就返回剪貼板對象的句柄;失敗則返回NULL

LONG (

    HKEY hKey,		// 要打開的主鍵句柄 
    LPCTSTR lpSubKey,	// 要打開的子鍵名地址 
    PHKEY phkResult 	// 存放打開子鍵句柄的地址 
   );

如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼

LONG (

    HKEY hKey,		// 要打開的主鍵句柄
    LPCTSTR lpSubKey,	// 要打開的子鍵名地址
    DWORD ulOptions,	// 保留,必須爲0 
    REGSAM samDesired,	// 存取掩碼 
    PHKEY phkResult 	// 存放打開子鍵句柄的地址
   );

如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼 

LONG (

    HKEY hKey,		// 需要查找的主鍵的句柄 
    LPCTSTR lpSubKey,	// 需要查找的子鍵名地址
    LPTSTR lpValue,	// 存放結果的緩衝區地址
    PLONG lpcbValue 	// 存放返回結果字節長度的緩衝區地址
   );
   
如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼 

LONG (

    HKEY hKey,		// 需要查找的主鍵的句柄 
    LPTSTR lpValueName,	// 需要查找的子鍵名地址 
    LPDWORD lpReserved,	// 保留,必須爲NULL. 
    LPDWORD lpType,	// 存放子鍵類型的緩衝區地址 
    LPBYTE lpData,	// 存放返回結果的緩衝區地址 
    LPDWORD lpcbData 	// 存放返回結果字節長度的緩衝區地址 
   );

如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼 

LONG (

    HKEY hKey,		// 需要設置鍵值的主鍵句柄 
    LPCTSTR lpSubKey,	// 需要設置的子鍵名地址 
    DWORD dwType,		// 鍵值類型 
    LPCTSTR lpData,	// 所設置的數據地址 
    DWORD cbData 		// 所設置的數據字節長度 
   );	

如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼 

LONG (

    HKEY hKey,		// 需要設置鍵值的主鍵句柄  
    LPCTSTR lpValueName,	// 需要設置的子鍵名地址
    DWORD Reserved,	// 保留,必須爲0 
    DWORD dwType,		// 鍵值類型 
    CONST BYTE *lpData,	// 所設置的數據地址 
    DWORD cbData 		// 所設置的數據字節長度 
   );
   
如果成功就返回ERROR_SUCCESS;失敗則返回非零錯誤代碼 

BOOL (

    HMENU hMenu,		// 菜單句柄
    UINT uIDEnableItem,	// 菜單項標識
    UINT uEnable		// 控制標誌
   );
uEnable的三種有用情況:
MF_DISABLED	禁止
MF_ENABLED	允許
MF_GRAYED		變灰

返回菜單項以前的狀態,如果菜單項不存在就返回0xFFFFFFFF

BOOL (

    HWND hWnd,		// 窗口句柄
    BOOL bEnable 		// 禁止或允許標誌
   );
bEnable的兩種狀態:
TRUE		允許
FALSE		禁止	

如果先前的窗口是禁止狀態,則返回非零值;如果先前的窗口是允許狀態,則返回零 

VOID (

    LPSYSTEMTIME lpSystemTime 	// 存放系統時間結構的地址 
   );	
 
無 

VOID (

    LPSYSTEMTIME lpSystemTime 	// 存放系統時間結構的地址  
   );
   
無 

BOOL (

    HANDLE hFile,			// 文件句柄 
    LPFILETIME lpCreationTime,	// 存放文件創建時間的地址 
    LPFILETIME lpLastAccessTime,	// 存放文件最後一次存取時間的地址  
    LPFILETIME lpLastWriteTime 	// 存放文件最後一次寫的地址 
   );
   
如果成功就返回非零值;失敗則返回零

DWORD (VOID)

如果成功就返回自WINDOWS啓動以來所經歷的毫秒數

UINT (

    HWND hWnd,		// 與定時器相關的窗口句柄
    UINT nIDEvent,		// 定時器標識
    UINT uElapse,		// 定時間隔,以毫秒爲單位
    TIMERPROC lpTimerFunc 	// 定時器超時函數地址
   );
   
如果成功就返回新定時器的句柄,用於KillTimer結束定時器;失敗則返回零

VOID CALLBACK (

    HWND hwnd,		// 與定時器相關的窗口句柄
    UINT uMsg,		// WM_TIMER 消息
    UINT idEvent,		// 定時器標識
    DWORD dwTime 		// 由GetTickCount獲得的當前系統時間
   );
   
無

HANDLE (

    LPCTSTR lpFileName,		// 要打開的文件名指針
    DWORD dwDesiredAccess,		// 存取(讀-寫)模式 
    DWORD dwShareMode,		// 共享模式 
    LPSECURITY_ATTRIBUTES lpSecurityAttributes,	// SECURITY_ATTRIBUTES 結構指針 
    DWORD dwCreationDistribution,	// 打開方式 
    DWORD dwFlagsAndAttributes,	// 文件屬性
    HANDLE hTemplateFile 		// GENERIC_READ方式存取的臨時文件句柄 
   );
   
如果成功就返回文件句柄;失敗則返回INVALID_HANDLE_VALUE

HFILE (

    LPCSTR lpFileName,		// 要打開的文件名指針
    LPOFSTRUCT lpReOpenBuff,	// 存放文件信息的緩衝區地址  
    UINT uStyle			// 打開方式
   );
   
如果成功就返回文件句柄;失敗則返回HFILE_ERROR

BOOL (

    HANDLE hFile,			// 要讀取的文件句柄 
    LPVOID lpBuffer,		// 存放讀出數據的緩衝區地址  
    DWORD nNumberOfBytesToRead,	// 要讀的字節數 
    LPDWORD lpNumberOfBytesRead,	// 指向讀取字節數的地址
    LPOVERLAPPED lpOverlapped 	// OVERLAPPED 結構的地址 
   );

如果成功就返回非零值;失敗則返回零

BOOL (

    HANDLE hFile,			// 要寫入的文件句柄 
    LPCVOID lpBuffer,		// 存放寫入數據的緩衝區地址
    DWORD nNumberOfBytesToWrite,	// 寫入的字節數 
    LPDWORD lpNumberOfBytesWritten,	// 指向寫入字節數的地址 
    LPOVERLAPPED lpOverlapped 	// OVERLAPPED 結構的地址
   );
   
如果成功就返回非零值;失敗則返回零

HFILE (

    LPCSTR lpPathName,	// 要打開的文件名指針  
    int iAttribute 	// 文件屬性 
   );
   
如果成功就返回文件句柄;失敗則返回HFILE_ERROR

HFILE (

    LPCSTR lpPathName,	// 要打開的文件名指針  
    int iReadWrite 	// 文件存取模式 
   );
   
如果成功就返回文件句柄;失敗則返回HFILE_ERROR

UINT (

    HFILE hFile,		// 文件句柄
    LPVOID lpBuffer,	// 存放讀出數據的緩衝區地址 
    UINT uBytes 		// 讀取的字節數 
   );
   
如果成功就返回實際讀取的字節數;失敗則返回HFILE_ERROR

UINT (

    HFILE hFile,		// 文件句柄 
    LPCSTR lpBuffer,	// 存放寫入數據的緩衝區地址  
    UINT uBytes 		// 寫入的字節數
   );
   
如果成功就返回實際寫入的字節數;失敗則返回HFILE_ERROR

UINT (

    HFILE hFile,		// 文件句柄
    LPVOID lpBuffer,	// 存放讀出數據的緩衝區地址 
    UINT uBytes 		// 讀取的字節數 
   );
   
如果成功就返回實際讀取的字節數;失敗則返回HFILE_ERROR

UINT (

    HFILE hFile,		// 文件句柄 
    LPCSTR lpBuffer,	// 存放寫入數據的緩衝區地址  
    UINT uBytes 		// 寫入的字節數
   );
   
如果成功就返回實際寫入的字節數;失敗則返回HFILE_ERROR

UINT (

    LPCTSTR lpRootPathName 	// 根路徑地址 
   );
   

0		無法決定
1		根目錄不存在
DRIVE_REMOVABLE	可移動驅動器
DRIVE_FIXED	固定驅動器
DRIVE_REMOTE	遠程(網絡)驅動器
DRIVE_CDROM	CD-ROM 驅動器
DRIVE_RAMDISK	RAM disk

DWORD (VOID)

   
如果失敗就返回零值,成功則返回由位掩碼錶示的當前可用驅動器:
bit 0		drive A
bit 1		drive B
bit 2		drive C
bit 3		drive D
。。。以此類推

DWORD (

    DWORD nBufferLength,	// 緩衝區大小 
    LPTSTR lpBuffer 	// 緩衝區地址,如成功則返回結果爲如下形式: c:/d:/
   );
   
如果成功就返回實際的字符數;失敗則返回零
發佈了22 篇原創文章 · 獲贊 5 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章