请帮忙看看下面服务中的createwindow

gooyan 2004-09-09 01:03:52
下面的代码是在一个2000服务类的里面一个函数中得。
我想问一下,服务程序里面为什么要createwindow呢?那个消息处理函数钟都作了什么处理阿?
WNDCLASS wndclass;
memset(&wndclass,0,sizeof(WNDCLASS));
wndclass.lpfnWndProc = _FacelessWndProc_; //关联消息处理函数
wndclass.hInstance = HINSTANCE(::GetModuleHandle(0)); //实例句柄
wndclass.lpszClassName = TEXT("RRL__FacelessWndProc_"); //类名称

ATOM atom = ::RegisterClass(&wndclass);
HWND hwnd = ::CreateWindow(wndclass.lpszClassName,TEXT ""),0,0,0,0,0,0,0,wndclass.hInstance,0);

消息处理函数
LRESULT CALLBACK _FacelessWndProc_( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
if (uMsg==WM_QUERYENDSESSION || uMsg==WM_ENDSESSION || uMsg==WM_QUIT)
{
if (lParam==NULL || uMsg==WM_QUIT)
{
DestroyWindow(hwnd); // kill me
if (AfxGetService()!=NULL)
AfxGetService()->Stop(); // stop me.
return TRUE;
}
}
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
...全文
108 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gooyan 2004-09-10
  • 打赏
  • 举报
回复
up
gooyan 2004-09-09
  • 打赏
  • 举报
回复
再一个2000服务里面createwindow有何用意,不明白
kuangjingbo 2004-09-09
  • 打赏
  • 举报
回复
销毁窗口 停止服务
gooyan 2004-09-09
  • 打赏
  • 举报
回复
nobody

15,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧