代码之家  ›  专栏  ›  技术社区  ›  Jack Hughes

如何从Topshelf服务挂接服务控制处理程序

  •  0
  • Jack Hughes  · 技术社区  · 11 年前

    我有一个现有的Windows服务,它非常成功地使用了Topshelf。

    我现在需要让服务在特定的USB设备与机器连接/断开连接时接收通知。

    我在托普舍夫看不到任何能让我这么做的东西。但我相信有一种方法可以使用Win32 API,如ServiceControlHandlerEx和带有DEVICE_NOTIFY_SERVICE_HANDLE选项的RegisterDeviceNotification。

    使用这些Win32 API会干扰Topshelf吗?据我所知,Topshelf包装了服务控制处理程序本身,所以我的服务也试图做同样的事情可能会给它带来一些问题?

    使现代化 : 在基于Topshelf的服务中,可以从服务控制处理程序中挂接设备通知。看见 sample project 详细信息。非常感谢克里斯·帕特森的帮助。

    1 回复  |  直到 11 年前
        1
  •  2
  •   Travis    11 年前

    Topshelf不会干扰您调用这些Win32 API。