gpt4 book ai didi

c# - 什么是 ServiceBase.ServiceHandle?有什么例子吗?

转载 作者:行者123 更新时间:2023-11-30 15:44:40 27 4
gpt4 key购买 nike

我在一项服务中工作,该服务监视文件系统以修改/添加/删除文件夹内的任何内容。当我开始实现它时,我在 ServiceBaseServiceBase.ServiceHandle 中遇到了这个属性。
这是做什么用的?我能用它实现什么?我试着用谷歌搜索它,但发现的只是 MSDN 网站告诉我的。
有人知道一些示例或教程如何使用它吗?

谢谢

最佳答案

ServiceBase.ServiceHandle 是用于更新服务控制面板中服务状态的系统句柄。它与 Win32 RegisterServiceCtrlHandler 返回的句柄相同和 RegisterServiceCtrlHandlerEx功能。

所有服务都有责任更新它们的状态。在非托管服务中,例如使用 C++ 创建的服务,这是开发人员的责任。您会将句柄和更新后的状态(例如,START_PENDING、RUNNING、STOPPED)作为输入传递给 Win32 SetServiceStatus状态改变时的功能。

即使在托管服务中,例如使用 C# 创建的服务,开发人员仍然负责更新状态;只是 ServiceBase 类为您执行所有状态更新。

简而言之,我想说这个句柄对于继承自 ServiceBase. 的托管服务来说是完全不需要的。

关于c# - 什么是 ServiceBase.ServiceHandle?有什么例子吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5915658/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com