我正在一项服务中查看文件系统,以修改/添加/删除文件夹中的任何内容。当我开始实现它时,我在ServiceBase
类ServiceBase.ServiceHandle
内遇到了这个属性。
这是用来做什么的?
我能用它做些什么?
我试过谷歌搜索,但发现只比MSDN网站告诉我的更多
有人知道一些例子或教程如何使用它吗?
感谢
答案 0 :(得分:4)
ServiceBase.ServiceHandle
是用于在“服务”控制面板中更新服务状态的系统句柄。它与Win32 RegisterServiceCtrlHandler
和RegisterServiceCtrlHandlerEx
函数返回的句柄相同。
所有服务都有责任更新其状态。在非托管服务中,例如在C ++中创建的服务,这是开发人员的责任。当状态发生变化时,您将把句柄和更新后的状态(例如,START_PENDING,RUNNING,STOPPED)作为输入传递给Win32 SetServiceStatus
函数。
即使在托管服务中,例如使用C#创建的服务,开发人员仍然负责更新状态;只是ServiceBase
类为您执行所有状态更新。
简而言之,我会说从继承自ServiceBase.