?? callback.h
字號:
//Callback.h
/////////////////////////////////////////////////////////
#ifndef _CALLBACK_H_
#define _CALLBACK_H_
/////////////////////////////////////////////////////////
#ifndef IMPORTS
#define DLLENTRY extern "C" __declspec(dllexport)
#else
#define DLLENTRY extern "C" __declspec(dllimport)
#endif
/////////////////////////////////////////////////////////
enum STATIC_MODUAL
{
DLL_MODUAL,
EXE_MODUAL,
};
/////////////////////////////////////////////////////////
//聲明回調函數
typedef (CALLBACK *CB_FUNCTION)(DWORD dwFuncID = 0);
#define szCB_SetCallbackFunc "CB_SetCallbackFunc"
typedef BOOL(_cdecl *SetCallbackFunc)(CB_FUNCTION cbFunc, DWORD dwFuncID = 0);
#define szCB_ExitApplication "CB_ExitApplication"
typedef BOOL(_cdecl *ExitApplication)(DWORD dwExitCode = 0);
/////////////////////////////////////////////////////////
BOOL CALLBACK CB_CloseWindow(DWORD dwFuncID = 0);
/////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////
#ifdef _USRDLL
//接口函數
DLLENTRY BOOL CB_SetCallbackFunc(CB_FUNCTION cbFunc, DWORD dwFuncID = 0);
DLLENTRY BOOL CB_ExitApplication(DWORD dwExitCode = 0);
#endif
//全局函數
void CloseMainWindow(UINT nModual);
/////////////////////////////////////////////////////////
//
class CCallBackFuncImpl
{
public:
HINSTANCE m_hLibInstance; //加載 DLL 時獲得的句柄
CCallBackFuncImpl();
~CCallBackFuncImpl();
//初始化
void InitLibInstance();
//檢查 DLL 文件是否存在
BOOL CheckLibInstance(char *szDLLPathName);
private:
//獲取 DLL 函數的入口地址
FARPROC GetLibInstance(const char *szProcName);
//保存 DLL 文件的路徑和名字
char m_szDLLPathName[256];
public:
BOOL SetCallbackFunction(CB_FUNCTION cbFunction, DWORD dwFuncID = 0);
BOOL ExitInstance(DWORD dwExitCode = 0);
private:
SetCallbackFunc m_pSetCallbackFunc;
ExitApplication m_pExitApplication;
};
/////////////////////////////////////////////////////////
#endif //_CALLBACK_H_
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -