PeejayAdams Ответов: 1

Проблема развертывания службы Windows с путем DLL


У меня есть служба Windows, которая использует EMGU.Пакет CV nuget.

Я могу установить как веб-сервис совершенно счастливо на моей машине dev (Windows 10) с installutil, и все работает прекрасно.

Когда я пытаюсь установить ту же службу на сервере (Windows Server 2012), все выглядит нормально, но я попадаю в исключение, как только пытаюсь вызвать конструктор из DLL ...

Внешнее исключение: Инициализатор типа для 'Emgu.CV.CvInvoke' вызвал исключение.

Внутреннее исключение: Не удалось загрузить DLL 'cvextern': указанный модуль не найден. (Исключение из HRESULT: 0x8007007E)

Служба работает под учетной записью локальной системы.

Я уверен, что упускаю из виду что-то очень очевидное, но .....

Что я уже пробовал:

Я попытался скопировать соответствующие библиотеки DLL в Windows/system32

Я также попытался изменить рабочий каталог в верхней части моего OnStart():

Environment.CurrentDirectory = AppDomain.CurrentDomain.BaseDirectory;


Ни то, ни другое не сработало.

1 Ответов

Рейтинг:
2

phil.o

Может быть, это может пролить свет на вашу проблему?
Итак: Emgu не удалось найти cvextern на сервере IIS[^]


PeejayAdams

Это выглядит очень полезным, спасибо. Я искал в Google более общее решение, но оно действительно кажется чем-то очень странным в настройке EMGU!

phil.o

Всегда пожалуйста!