2011-01-14 20 views
0

問題は、テストボックスとWindows XPマシンでRWLock.dllをロードしようとするとSystem.IO.FileLoadExceptionが発生することです。dllがロードされていない - FileLoadException

これは、それがWindows 2003のサーバーマシン(最も可能性の高い32ビット)にDLLをロードしようとしたときにスローされる例外です。

System.IO.FileLoadException:は、rwlock「で輸入手続き、バージョン= 1.0.3889.27926、Culture =ニュートラル、PublicKeyToken = null 'をロードできませんでした。

ファイル名: 'rwlock、Version = 1.0.3889.27926、Culture = neutral、PublicKeyToken = null' ---> System.Runtime.InteropServices.COMException(0x8007007F):指定されたプロシージャが見つかりませんでした。 (HRESULTの例外:0x8007007F)...

ただし、Windows 2007 *サーバーマシン(64ビット)でこれを実行しようとしても問題はありませんでした。

アイデア?事前に感謝:)

* Windows 2008の(おっと)

+1

* Windows 2007サーバーマシン(64ビット)*とは何ですか? –

答えて

3

エラーメッセージがRWLock.dllは別のDLLから存在していない機能をインポートしようとしていることを言っています。これはおそらく、RWLockが(Windows 2007 Serverではなく)Windows 2008 Serverマシンに存在するAPI関数をインポートしようとしていることを意味しますが、Windows 2003以前ではそうではありません。

Dependency Walkerを使用して、ロードしようとしているものと見つからない関数を見つけることはできますが、存在しないWindowsバージョンでは利用できません。

もう1つの可能性は、RWLockが提供する別のDLLに依存しているが、正しく再配布していないことです。 Dependency Walkerもこれを手助けすることができます。

関連する問題