Windows 服务中托管的 AlprNet 加载失败

AlprNet hosted in Windows service failed to load

当我在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." 没有其他信息。

我在安装 windows 服务的 exe 文件的文件夹中拥有所有 DLL 和 runtime_data,与 bin\Debug 文件夹中的方式完全相同。

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

万一对大家有用:

创建 new AlprNet 之前 OnStart 方法中的这一行解决了问题:

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

显然,没有这个就无法解决非 .NET DLL 依赖关系。