Windows系统服务器是一种可以在Windows操作系统上运行的服务器程序,它可以提供网络服务、文件服务、数据库服务等。是一个简单的Windows系统服务器代码:
Windows系统服务器是一种可以在Windows操作系统上运行的服务器程序,它可以提供网络服务、文件服务、数据库服务等。
是一个简单的Windows系统服务器代码:
#include
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// 创建一个服务
SERVICE_TABLE_ENTRY ServiceTable[2];
ServiceTable[0].lpServiceName = "MyService";
ServiceTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)ServiceMain;
ServiceTable[1].lpServiceName = NULL;
ServiceTable[1].lpServiceProc = NULL;
StartServiceCtrlDispatcher(ServiceTable);
return 0;
}
void ServiceMain(int argc, char** argv)
{
// 初始化服务
SERVICE_STATUS_HANDLE hStatus = RegisterServiceCtrlHandler("MyService", (LPHANDLER_FUNCTION)Handler);
SERVICE_STATUS status;
status.dwServiceType = SERVICE_WIN32_OWN_PROCESS;
status.dwCurrentState = SERVICE_START_PENDING;
status.dwControlsAccepted = SERVICE_ACCEPT_STOP | SERVICE_ACCEPT_SHUTDOWN;
status.dwWin32ExitCode = 0;
status.dwServiceSpecificExitCode = 0;
status.dwCheckPoint = 0;
status.dwWaitHint = 0;
SetServiceStatus(hStatus, &status);
// 启动服务
status.dwCurrentState = SERVICE_RUNNING;
SetServiceStatus(hStatus, &status);
// 运行服务
while (status.dwCurrentState == SERVICE_RUNNING)
{
// do something here
Sleep(1000);
}
// 停止服务
status.dwCurrentState = SERVICE_STOPPED;
SetServiceStatus(hStatus, &status);
}
void Handler(DWORD fdwControl)
{
switch (fdwControl)
{
case SERVICE_CONTROL_STOP:
case SERVICE_CONTROL_SHUTDOWN:
// do something here
break;
default:
break;
}
}
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(77条)