0

当我在 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在我的 Windows 服务的 exe 文件安装的文件夹中,与在文件夹中的方式完全相同bin\Debug

如何查找 AlprNet 加载失败的原因?

4

1 回答 1

0

如果它对任何人有用:

OnStart在创建之前的方法中的这一行new AlprNet 修复了问题:

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

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

显然,如果没有这个,非 .NET DLL 依赖项就无法解决。

于 2019-06-14T12:31:47.470 回答