たとえば、VB .Net プログラムに VC++ lib を追加しています。
<DllImport("KMpeg4.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Shared Function KOpenInterface() As System.IntPtr
End Function
実行時にエラーが発生しました:
DLL 'KMpeg4.dll' をロードできません: 指定されたモジュールが見つかりませんでした。(HRESULT からの例外: 0x8007007E)
私はこのライブラリを を含むあらゆる場所に配置しましたがsystem32
、まだ運がありませんKMpeg4.dll
。
だから私は欠落しているライブラリを私に与えた依存関係ウォーカーを実行しました:
API-MS-WIN-CORE-COM-L1-1-0.DLL API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL API-MS-WIN-CORE-WINRT-L1-1-0.DLL API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL DCOMP.DLL GPSVC.DLL IESHIMS.DLL
そして悪いリンク機能:
c:\windows\system32\API-MS-WIN-CORE-THREADPOOL-L1-1-0.DLL c:\windows\system32\OLE32.DLL c:\windows\system32\DWMAPI.DLL c:\windows\system32\IEFRAME.DLL c:\windows\system32\IMM32.DLL c:\windows\system32\MFPLAT.DLL c:\windows\system32\NDFAPI.DLL c:\windows\system32\USERENV.DLL c:\windows\system32\UXTHEME.DLL
依存関係ウォーカーは次のエラーを出します:
警告: 少なくとも 1 つの遅延読み込み依存モジュールが見つかりませんでした。警告: 遅延読み込み依存モジュールにエクスポート機能がないため、少なくとも 1 つのモジュールに未解決のインポートがあります。
Microsoft VC++ 2005、2008、2010 x86 および x64 と .Net Framework 4 を既にインストールしています。
同様に、sysinternalプロセスモニターを使用してポップアップが表示されるかどうかを確認しようとしましたが、プログラムがエラー例外を取得する前にKMpeg4.dll
ロードされませんKMpeg4.dll
それらのライブラリがどのパッケージから得られるかについてのアイデアはありますか?
または、この問題を回避する方法は?