破解常用断点设置API函数原型——常用函数汇总

HWND CreateWindow(

    LPCTSTR lpClassName,	// 指向注册窗口类名的指针
    LPCTSTR lpWindowName,	// 指向窗口名的指针
    DWORD dwStyle,		// 窗口样式
    int x,		// 窗口水平位置
    int y,		// 窗口垂直位置
    int nWidth,		// 窗口宽度
    int nHeight,		// 窗口高度
    HWND hWndParent,	// 父窗口句柄
    HMENU hMenu,		// 菜单句柄
    HANDLE hInstance,	// 应用程序实例句柄
    LPVOID lpParam		// 指向创建窗口所需的数据
   );
   
返回值:如果成功就返回新窗口的句柄;失败则返回NULL值

HWND CreateWindowEx(

    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 ShowWindow(

    HWND hWnd,		// 窗口句柄
    int nCmdShow 		// 窗口显示状态
   );	
   
返回值:如果先前的窗口可见就返回非零值;如果先前的窗口隐藏则返回零值

BOOL UpdateWindow(

    HWND hWnd 		// 窗口句柄 
   );

返回值:如果成功就返回非零值;失败则返回零值

int GetWindowText(

    HWND hWnd,		// 窗口或文本控件句柄
    LPTSTR lpString,	// 缓冲区地址
    int nMaxCount 		// 最大字符数
   );
   
返回值:如果成功就返回文本长度;失败则返回零值

int MessageBox(

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

返回值:如果失败则返回零值;如果成功,返回值为如下之一:
IDABORT		Abort 按钮被选择
IDCANCEL		Cancel 按钮被选择
IDIGNORE		Ignore 按钮被选择
IDNO		No 按钮被选择
IDOK		OK 按钮被选择
IDRETRY		Retry 按钮被选择
IDYES		Yes 按钮被选择

int MessageBoxEx(

    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 MessageBoxIndirect(

    LPMSGBOXPARAMS lpMsgBoxParams	// 消息框参数结构地址
   );
   
返回值:如果失败则返回零值;如果成功,返回值为如下之一:
IDABORT		Abort 按钮被选择
IDCANCEL		Cancel 按钮被选择
IDIGNORE		Ignore 按钮被选择
IDNO		No 按钮被选择
IDOK		OK 按钮被选择
IDRETRY		Retry 按钮被选择
IDYES		Yes 按钮被选择

BOOL MessageBeep(

    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 DialogBox(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCTSTR lpTemplate,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 对话框处理函数指针 
   );	
 
返回值:如果成功就返回nResult参数,用于EndDialog结束对话框;失败则返回-1

int DialogBoxParam(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCTSTR lpTemplateName,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 对话框处理函数指针  
    LPARAM dwInitParam 	// 初始化值
   );
   
返回值:如果成功就返回nResult参数,用于EndDialog结束对话框;失败则返回-1

int DialogBoxIndirect(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPDLGTEMPLATE lpTemplate,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 对话框处理函数指针 
   );	
 
返回值:如果成功就返回nResult参数,用于EndDialog结束对话框;失败则返回-1

int DialogBoxIndirectParam(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCDLGTEMPLATE lpTemplateName,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 对话框处理函数指针  
    LPARAM dwInitParam 	// 初始化值
   );
   
返回值:如果成功就返回nResult参数,用于EndDialog结束对话框;失败则返回-1

int CreateDialog(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCTSTR lpTemplate,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 对话框处理函数指针 
   );	
 
返回值:如果成功就返回对话框句柄;失败则返回NULL

int CreateDialogParam(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCTSTR lpTemplateName,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 对话框处理函数指针  
    LPARAM dwInitParam 	// 初始化值
   );
   
返回值:如果成功就返回对话框句柄;失败则返回NULL

int CreateDialogIndirect(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPDLGTEMPLATE lpTemplate,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc 	// 对话框处理函数指针 
   );	
 
返回值:如果成功就返回对话框句柄;失败则返回NULL

int CreateDialogIndirectParam(

    HINSTANCE hInstance,	// 应用程序实例句柄
    LPCDLGTEMPLATE lpTemplateName,	// 对话框模板指针
    HWND hWndParent,	// 父窗口句柄
    DLGPROC lpDialogFunc,	// 对话框处理函数指针  
    LPARAM dwInitParam 	// 初始化值
   );
   
返回值:如果成功就返回对话框句柄;失败则返回NULL

UINT GetDlgItemText(

    HWND hDlg,		// 对话框句柄
    int nIDDlgItem,	// 控件标识
    LPTSTR lpString,	// 文本缓冲区指针
    int nMaxCount 		// 最大字符数
   );
   
返回值:如果成功就返回文本长度;失败则返回零值

UINT GetDlgItemInt(

    HWND hDlg,		// 对话框句柄
    int nIDDlgItem,	// 控件标识
    BOOL *lpTranslated,	// 接收成功/失败指示的指针
    BOOL bSigned 		// 指定是有符号数还是无符号数
   );
   
返回值:如果成功,lpTranslated被设置为TRUE,返回文本对应的整数值;如果失败,lpTranslated被设置为FALSE,返回值为零

HANDLE GetClipboardData(

    UINT uFormat 		// 剪贴板格式  
   );
   
返回值:如果成功就返回剪贴板对象的句柄;失败则返回NULL

LONG RegOpenKey(

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

返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码

LONG RegOpenKeyEx(

    HKEY hKey,		// 要打开的主键句柄
    LPCTSTR lpSubKey,	// 要打开的子键名地址
    DWORD ulOptions,	// 保留,必须为0 
    REGSAM samDesired,	// 存取掩码 
    PHKEY phkResult 	// 存放打开子键句柄的地址
   );

返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码 

LONG RegQueryValue(

    HKEY hKey,		// 需要查找的主键的句柄 
    LPCTSTR lpSubKey,	// 需要查找的子键名地址
    LPTSTR lpValue,	// 存放结果的缓冲区地址
    PLONG lpcbValue 	// 存放返回结果字节长度的缓冲区地址
   );
   
返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码 

LONG RegQueryValueEx(

    HKEY hKey,		// 需要查找的主键的句柄 
    LPTSTR lpValueName,	// 需要查找的子键名地址 
    LPDWORD lpReserved,	// 保留,必须为NULL. 
    LPDWORD lpType,	// 存放子键类型的缓冲区地址 
    LPBYTE lpData,	// 存放返回结果的缓冲区地址 
    LPDWORD lpcbData 	// 存放返回结果字节长度的缓冲区地址 
   );

返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码 

LONG RegSetValue(

    HKEY hKey,		// 需要设置键值的主键句柄 
    LPCTSTR lpSubKey,	// 需要设置的子键名地址 
    DWORD dwType,		// 键值类型 
    LPCTSTR lpData,	// 所设置的数据地址 
    DWORD cbData 		// 所设置的数据字节长度 
   );	

返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码 

LONG RegSetValueEx(

    HKEY hKey,		// 需要设置键值的主键句柄  
    LPCTSTR lpValueName,	// 需要设置的子键名地址
    DWORD Reserved,	// 保留,必须为0 
    DWORD dwType,		// 键值类型 
    CONST BYTE *lpData,	// 所设置的数据地址 
    DWORD cbData 		// 所设置的数据字节长度 
   );
   
返回值:如果成功就返回ERROR_SUCCESS;失败则返回非零错误代码 

BOOL EnableMenuItem(

    HMENU hMenu,		// 菜单句柄
    UINT uIDEnableItem,	// 菜单项标识
    UINT uEnable		// 控制标志
   );
uEnable的三种有用情况:
MF_DISABLED	禁止
MF_ENABLED	允许
MF_GRAYED		变灰

返回值:返回菜单项以前的状态,如果菜单项不存在就返回0xFFFFFFFF

BOOL EnableWindow(

    HWND hWnd,		// 窗口句柄
    BOOL bEnable 		// 禁止或允许标志
   );
bEnable的两种状态:
TRUE		允许
FALSE		禁止	

返回值:如果先前的窗口是禁止状态,则返回非零值;如果先前的窗口是允许状态,则返回零 

VOID GetLocalTime(

    LPSYSTEMTIME lpSystemTime 	// 存放系统时间结构的地址 
   );	
 
返回值:

VOID GetSystemTime(

    LPSYSTEMTIME lpSystemTime 	// 存放系统时间结构的地址  
   );
   
返回值:

BOOL GetFileTime(

    HANDLE hFile,			// 文件句柄 
    LPFILETIME lpCreationTime,	// 存放文件创建时间的地址 
    LPFILETIME lpLastAccessTime,	// 存放文件最后一次存取时间的地址  
    LPFILETIME lpLastWriteTime 	// 存放文件最后一次写的地址 
   );
   
返回值:如果成功就返回非零值;失败则返回零

DWORD GetTickCount(VOID)

返回值:如果成功就返回自WINDOWS启动以来所经历的毫秒数

UINT SetTimer(

    HWND hWnd,		// 与定时器相关的窗口句柄
    UINT nIDEvent,		// 定时器标识
    UINT uElapse,		// 定时间隔,以毫秒为单位
    TIMERPROC lpTimerFunc 	// 定时器超时函数地址
   );
   
返回值:如果成功就返回新定时器的句柄,用于KillTimer结束定时器;失败则返回零

VOID CALLBACK TimerProc(

    HWND hwnd,		// 与定时器相关的窗口句柄
    UINT uMsg,		// WM_TIMER 消息
    UINT idEvent,		// 定时器标识
    DWORD dwTime 		// 由GetTickCount获得的当前系统时间
   );
   
返回值:

HANDLE CreateFile(

    LPCTSTR lpFileName,		// 要打开的文件名指针
    DWORD dwDesiredAccess,		// 存取(读-写)模式 
    DWORD dwShareMode,		// 共享模式 
    LPSECURITY_ATTRIBUTES lpSecurityAttributes,	// SECURITY_ATTRIBUTES 结构指针 
    DWORD dwCreationDistribution,	// 打开方式 
    DWORD dwFlagsAndAttributes,	// 文件属性
    HANDLE hTemplateFile 		// GENERIC_READ方式存取的临时文件句柄 
   );
   
返回值:如果成功就返回文件句柄;失败则返回INVALID_HANDLE_VALUE

HFILE OpenFile(

    LPCSTR lpFileName,		// 要打开的文件名指针
    LPOFSTRUCT lpReOpenBuff,	// 存放文件信息的缓冲区地址  
    UINT uStyle			// 打开方式
   );
   
返回值:如果成功就返回文件句柄;失败则返回HFILE_ERROR

BOOL ReadFile(

    HANDLE hFile,			// 要读取的文件句柄 
    LPVOID lpBuffer,		// 存放读出数据的缓冲区地址  
    DWORD nNumberOfBytesToRead,	// 要读的字节数 
    LPDWORD lpNumberOfBytesRead,	// 指向读取字节数的地址
    LPOVERLAPPED lpOverlapped 	// OVERLAPPED 结构的地址 
   );

返回值:如果成功就返回非零值;失败则返回零

BOOL WriteFile(

    HANDLE hFile,			// 要写入的文件句柄 
    LPCVOID lpBuffer,		// 存放写入数据的缓冲区地址
    DWORD nNumberOfBytesToWrite,	// 写入的字节数 
    LPDWORD lpNumberOfBytesWritten,	// 指向写入字节数的地址 
    LPOVERLAPPED lpOverlapped 	// OVERLAPPED 结构的地址
   );
   
返回值:如果成功就返回非零值;失败则返回零

HFILE _lcreat(

    LPCSTR lpPathName,	// 要打开的文件名指针  
    int iAttribute 	// 文件属性 
   );
   
返回值:如果成功就返回文件句柄;失败则返回HFILE_ERROR

HFILE _lopen(

    LPCSTR lpPathName,	// 要打开的文件名指针  
    int iReadWrite 	// 文件存取模式 
   );
   
返回值:如果成功就返回文件句柄;失败则返回HFILE_ERROR

UINT _lread(

    HFILE hFile,		// 文件句柄
    LPVOID lpBuffer,	// 存放读出数据的缓冲区地址 
    UINT uBytes 		// 读取的字节数 
   );
   
返回值:如果成功就返回实际读取的字节数;失败则返回HFILE_ERROR

UINT _lwrite(

    HFILE hFile,		// 文件句柄 
    LPCSTR lpBuffer,	// 存放写入数据的缓冲区地址  
    UINT uBytes 		// 写入的字节数
   );
   
返回值:如果成功就返回实际写入的字节数;失败则返回HFILE_ERROR

UINT _hread(

    HFILE hFile,		// 文件句柄
    LPVOID lpBuffer,	// 存放读出数据的缓冲区地址 
    UINT uBytes 		// 读取的字节数 
   );
   
返回值:如果成功就返回实际读取的字节数;失败则返回HFILE_ERROR

UINT _hwrite(

    HFILE hFile,		// 文件句柄 
    LPCSTR lpBuffer,	// 存放写入数据的缓冲区地址  
    UINT uBytes 		// 写入的字节数
   );
   
返回值:如果成功就返回实际写入的字节数;失败则返回HFILE_ERROR

UINT GetDriveType(

    LPCTSTR lpRootPathName 	// 根路径地址 
   );
   
返回值如下所示之一:
0		无法决定
1		根目录不存在
DRIVE_REMOVABLE	可移动驱动器
DRIVE_FIXED	固定驱动器
DRIVE_REMOTE	远程(网络)驱动器
DRIVE_CDROM	CD-ROM 驱动器
DRIVE_RAMDISK	RAM disk

DWORD GetLogicalDrives(VOID)

   
返回值:如果失败就返回零值,成功则返回由位掩码表示的当前可用驱动器:
bit 0		drive A
bit 1		drive B
bit 2		drive C
bit 3		drive D
。。。以此类推

DWORD GetLogicalDriveStrings(

    DWORD nBufferLength,	// 缓冲区大小 
    LPTSTR lpBuffer 	// 缓冲区地址,如成功则返回结果为如下形式: c:/
 
 d:/
 
 
 
 
   );
   
返回值:如果成功就返回实际的字符数;失败则返回零
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值