我正在创建一个Windows服务。该服务必须每天从Advantage数据库中读取一次数据。
我在我的计算机上复制了Advantage数据库并且工作正常但是当我在服务器上尝试该服务时出现以下错误:
“AdsException:错误6082:加载Advantage Local Server库时出错。”
根据文档(link),我必须将ADSLOC32.DLL放在\ WINDOWS \ SYSTEM目录中。
我尝试过,但它不起作用。
有什么想法吗?
编辑:我创建了一个控制台应用程序,它执行与我的Windows服务完全相同的代码,它的工作原理完全正常。似乎问题来自我的服务,但我不知道我的服务的哪个部分是错的......
编辑2:我检查了进程监视器,我的服务没有尝试加载adsloc32.dll,它尝试加载adsloc64.dll。我没有找到adsloc64.dll文件,因此我将adsloc32.dll的副本复制到我的应用程序目录并将其命名为adsloc64.dll,但它无效。
答案 0 :(得分:3)
我找到了解决方案。
我使用Windows Sysinternals中的Process Monitor来了解程序尝试加载dll文件的位置。 并且它没有尝试加载adsloc32.dll,它正在加载adsloc64.dll。
我只是将adsloc64.dll文件放到我的应用程序目录中,现在可以正常工作。
答案 1 :(得分:2)
尝试将adsloc32.dll放到与您的应用程序相同的目录中。也许权利存在一些问题