Не удалось загрузить AlprNet, размещенный в службе Windows - PullRequest
0 голосов
/ 14 июня 2019

Когда я запускаю этот код под своей учетной записью в отладчике Visual Studio

_alprNet = new AlprNet("eu", "openalpr.conf", "runtime_data");
if (!_alprNet.IsLoaded())
{
    Tools.LogError("!!! OpenALPR failed to load.");

Работает нормально, загружается AlprNet.

Но когда я устанавливаю службу Windows и запускаю эту службу, я получаю "!!! OpenALPR failed to load." без дополнительной информации.

У меня есть все библиотеки DLL и runtime_data в папке, где установлен exe-файл моей службы Windows, точно так же, как в папке bin\Debug.

Как найти причину, по которой AlprNet не удалось загрузить?

1 Ответ

0 голосов
/ 14 июня 2019

В случае, если это кому-нибудь пригодится:

Эта строка в методе OnStart перед созданием new AlprNet исправила проблему:

System.IO.Directory.SetCurrentDirectory(System.AppDomain.CurrentDomain.BaseDirectory);

https://stackoverflow.com/a/10385563/2224701

По-видимому, без этого не могут быть решены зависимости .NET DLLs.

...