Управление службой факсов Windows из другой службы - PullRequest
1 голос
/ 22 августа 2011

Я разработал (Topshelf) сервис, который подготавливает и отправляет факсимильные задания с использованием базовой службы факсов из Windows (в моем случае win7). Я использую FaxDotNet , который просто оборачивает winfax.dll (бывший FAXCOM) для .NET.

Всякий раз, когда я запускаю свой сервис автономно (на консоли), он работает как положено. Однако, когда я устанавливаю службу (с той же учетной записью домена) и запускаю ее, она зависает при отправке факса в службу факсов. Единственный выход - убить сервис в диспетчере задач. Что отличается при запуске службы или консольного приложения, когда оно не является исполняющей учетной записью?

Видимо, не все задачи FaxDotNet зависают. Получение и обновление активных заданий работает. При удалении задания факса выдается ошибка.

ОБНОВЛЕНИЕ: Очевидно, что проблема не в интерфейсе API факса, а в программе Acrobat Reader, которая запускается с помощью команды печати для вывода содержимого PDF на принтер факса. Когда я переключаюсь на другое средство просмотра PDF по умолчанию, оно работает. Таким образом, кажется, что в «сервисном режиме» Acrobat не сообщает обратно вызывающему API, что он завершен, однако процесс acrord32.exe закрывается соответствующим образом (без скрытых диалогов или около того).


Также я не могу использовать удаленную отладку, когда запускаю это как службу (только автономно). Любые предложения по этой части? ОБНОВЛЕНИЕ: Не бери в голову этот. Он отображает ошибку, но все еще работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...