通过Remote Spy我们常能见到类名为Worker的窗口(如下图所示),那么工作窗口类是什么呢?
其实工作窗口与常规窗口十分相似,只不过我们无需调用RegisterClass()函数注册窗口类,并把我们传入的p参数作为窗口的额外数据保存了起来。想来微软青睐这类不可见的窗口也就是为了简化步骤,提高效率而已。
我们先来看看如何创建工作窗口的。在头文件miscsvcs.h内有CreateWorkerWindow()函数的原型声明:
// *************************************************************************
// CreateWorkerWindow
//
// Purpose:
// Helper function to create a worker window
//
// Parameters:
// pwszClass Class name (NULL preferred, unless you need a unique class)
// pfnWndProc Window proc for worker window
// hwndParent Parent
// dwExStyle WS_EX_* styles
// dwFlags WS_* styles
// pwszTitle Window title
// hmenu Menu or child ID
// p