私のWebアプリケーションはWPF(XBAP)で書かれています.p/win32 dll(player.dll
はCとC++で書かれています)を呼び出します。私はアプリケーションを配備しました。私はIEでWebアプリケーションを実行しようとしたとき、最初に私は、このエラーました:Webアプリケーションのコンテキストでwin32 dllと.net dllの違いはありますか?
System.DllNotFoundException: Unable to load DLL 'Player.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
をしかし、私は手動でクライアントPCのC:\Windows\System32
に私のwin32の DLLをコピーした際に、それも私のWebアプリケーションが使用するものの、働いていましたいくつかの他の.Net dllと私は手動でそれらをコピーしていない。
なぜ私は正確に win32 dllをクライアントPCにコピーする必要があるのか、混乱しています.Net dllではありませんか? Webアプリケーションはそれらにアクセスしますか?
-
関連トピックはこれです:
DllNotFoundException when web application p/invokes a win32 DLL
? VC++で自分自身を作成したものも含まれていますか? – Nawaz
ネイティブDLLは、.NET以外のアセンブリDLLを意味します。ネイティブDLLは、関数とデータ、およびリソースをエクスポートします。例としては、User32.dllなどのシステムコンポーネントやVisual C++でビルドしたDLLなどがあります。一方、アセンブリは何もエクスポートしません(エクスポートテーブルは空です)。これらは、CLRで使用する特別な(ネイティブでない)DLLであり、任意の.NET言語から使用できます。 –