У меня есть существующая служба Windows, которая очень успешно использует Topshelf.
Теперь мне нужно, чтобы служба получала уведомления, когда определенные USB-устройства подключаются / отключаются к / от машины.
Я не вижу в Topshelf ничего, что позволило бы мне это сделать. Но я считаю, что есть способ сделать это с помощью Win32 API, таких как ServiceControlHandlerEx и RegisterDeviceNotification, с параметром DEVICE_NOTIFY_SERVICE_HANDLE.
Будет ли использование этих Win32 API мешать работе Topshelf? Насколько я понимаю, Topshelf обертывает сам обработчик управления службой, поэтому моя служба, пытающаяся сделать то же самое, может вызвать некоторые проблемы?
Обновление: можно подключать уведомления устройства от обработчика управления службами в службе на основе Topshelf. Подробнее см. образец проекта. Большое спасибо Крису Паттерсону за его помощь.