我已经写在VC ++的服务。 我跟着这里的教程 。 现在,我试图找出如何接收消息像DBT_DEVICEARRIVAL,DBT_DEVICEREMOVECOMPLETE,WM_COPYDATA等,就像是有一个顶层窗口一个普通的应用程序。 当它搜索,我碰上了这MSDN文章
在“广播消息”一节,在最后的段落:
应用程序通过自己的顶层窗口的窗口过程接收消息。 消息不发送到子窗口。 服务可通过窗口过程或者他们的服务控制处理程序接收消息。
但是这几乎是不可能找到如何做到这一点的任何例子。
一个的WndProc我服务,所以其收到的消息我怎么能联系起来?
或者说,我怎样才能让我的服务控制处理函数接收窗口消息? 我的服务控制处理程序只有一个DWORD参数而不是UINT,WPARAM,LPARAM一个的WndProc的等。
我看过1)使用隐藏的窗口和2)消息仅窗口等,但我不认为我可以在服务中使用它们; 不想。 它会很高兴,如果我能在任的这MSDN提到这两个方式完成它。
服务描述:
该服务将检测到USB设备插入和一些文件复制到其中。 它也有保留更改某些目录和文件的轨道,以便它知道哪些复制。
这一基本功能可以扩展到包括其他的东西,在未来。 所以,我可能要能够接收这我不知道现在很多其他窗口的消息。
上面提到的例子消息只是从我习惯了拍摄,制定常规的Windows应用程序时。 我明白,如果它们不适合或者安全,编写服务时。