0

我遇到的问题是尝试在测试盒和 Windows xp 机器上加载 RWLock.dll 时收到 System.IO.FileLoadException。

这是尝试在 windows 2003 服务器机器(很可能是 32 位)上加载 dll 时引发的异常:

System.IO.FileLoadException:无法加载由 'rwlock,Version=1.0.3889.27926,Culture=neutral,PublicKeyToken=null' 导入的过程。

文件名:'rwlock, Version=1.0.3889.27926, Culture=neutral, PublicKeyToken=null' ---> System.Runtime.InteropServices.COMException (0x8007007F): 找不到指定的过程。(来自 HRESULT 的异常:0x8007007F)...

但是,我们尝试在 Windows 2007* 服务器计算机(64 位)上运行它并没有遇到任何问题。

有任何想法吗?提前致谢 :)

*Windows 2008(哎呀)

4

1 回答 1

3

错误消息告诉您 RWLock.dll 尝试从另一个 DLL 导入不存在的函数。这可能意味着 RWLock 正在尝试导入存在于 Windows 2008 Server 机器上的 API 函数(我假设您的意思是“Windows 2007 Server”,而不是 Windows 2003 或更早版本)。

您可以使用Dependency Walker来确定它试图加载什么以及它试图在哪里找到丢失的函数,但它无助于使其在不存在的 Windows 版本上可用。

另一种可能性是 RWLock 依赖于它提供的另一个 DLL,但您没有正确地重新分发它。Dependency Walker 也可以提供帮助。

于 2011-01-14T19:55:53.330 回答