📄 main.cpp
字号:
#include <windows.h>
#include <TCHAR.H>
#include "resource.h"
#include "Define.h"
#include "Common.h"
#include "DlgOption.h"
#include "DlgMain.h"
#pragma comment(lib, "common.lib")
SYSTEM g_Sys = {0};
INT WINAPI WinMain (HINSTANCE hInstance, HINSTANCE, LPSTR, INT)
{ TCHAR caBuffer[MAX_STRING] = {0};
TCHAR caFileName[_MAX_PATH] = {0};
g_Sys.hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
if (NULL == g_Sys.hSCManager){
GetErrorMessage(caBuffer, MAX_STRING, GetLastError());
FMessageBox(g_Sys.hWnd, MB_ICONWARNING, _T("WDMbuild"),
_T("%s%s\n%s"), _T("打开 Windows 服务控制管理器连接失败:"),
caBuffer,
_T("驱动程序 \"安装\\启动\" 和 \"卸载\\停止\" 功能将不可用!") );
}
g_Sys.hModule = hInstance;
g_Sys.hIcon = LoadIcon(hInstance, LPTSTR(IDI_ICON));
GetModuleFileName(hInstance, caFileName, _MAX_PATH);
DecomposeFileName(caFileName, g_Sys.caPath, g_Sys.caName, NULL);
MakeFileName(caFileName, g_Sys.caPath, CALLDDK_FNAME, NULL);
if ( !WriteResourceToFile(caFileName,
hInstance,
LPTSTR(IDR_CALLDDK),
_T("FILE")) ){
GetErrorMessage(caBuffer, MAX_STRING, GetLastError());
FMessageBox(g_Sys.hWnd, MB_ICONERROR, _T("WDMbuild"),
_T("创建 \"%s\" 文件失败:%s"),
caFileName, caBuffer);
return -1;
}
if ( !LoadOption(&(g_Sys.Option)) ){
GetErrorMessage(caBuffer, MAX_STRING, GetLastError());
FMessageBox(g_Sys.hWnd, MB_ICONWARNING, _T("WDMbuild"),
_T("载入配置文件 %s\\%s 失败:%s"),
g_Sys.caPath, OPTION_FNAME, caBuffer);
}
else{
if ( IsOptionError(NULL, NULL, &(g_Sys.Option)) ){
FMessageBox(g_Sys.hWnd, MB_ICONWARNING, _T("WDMbuild"),
_T("配置文件内容错误:%s\\%s\n\n请重新设置!"),
g_Sys.caPath, OPTION_FNAME);
}
}
if ( -1 == DialogBox(hInstance, LPTSTR(IDD_MAIN), g_Sys.hWnd, DlgMain) ){
GetErrorMessage(caBuffer, MAX_STRING, GetLastError());
FMessageBox(g_Sys.hWnd, MB_ICONERROR, _T("WDMbuild"),
_T("创建对话框失败:%s"),
caBuffer);
return -1;
}
CloseServiceHandle(g_Sys.hSCManager);
MakeFileName(caFileName, g_Sys.caPath, CALLDDK_FNAME, NULL);
DeleteFile(caFileName);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -