0

クリーンなコンピューター(ビジュアルスタジオなし)で、他の誰か(私のコンピューターで動作していた)のデバッグフォルダーを圧縮し、他の誰かがプログラムを起動しようとしたところ、エラーが発生しました

System.DllNotFoundException: DLL 'HookHandler.dll' を読み込めません: 指定されたモジュールが見つかりませんでした。(HRESULT からの例外: 0x8007007E)

次に、彼にhttp://www.microsoft.com/en-us/download/details.aspx?id=8328をインストールしてもらいました 。

それが役立つと考えています。彼のコンピューターでdllが見つからないのに、私のコンピューターでは問題なく見つかる理由はありますか?

編集:HookHandler.dllがexeと同じフォルダーにあることに注意してください。繰り返しますが、exe を実行すると自分のコンピューターで動作し、HookHandler が自分のフォルダーにあります。私はそれを HookHandler で圧縮して他の人に渡しましたが、機能しませんでした。HookHandler が彼のフォルダーにあることを確認しました。

何らかの理由で、ビジュアルスタジオをインストールすると問題が修正されました。したがって、HookHandler が依存するものでなければならないので、ProcMon ツールまたは depends.exe を試して、HookHandler が依存しているものを確認する必要があります。

ありがとう、ディーン

4

4 に答える 4

1

私の推測では、HookHandler.dllはローカルプロジェクトになく、VSはコンピューター上の別の場所からそれを取得しています。それが本当なら、あなたがしなければならないのは:

プロジェクト(VSを使用)で、HookHandler.dllのプロパティを確認し、[ローカルコピー]をTrueに設定して、再構築、再圧縮、および再送信します。

私は過去にこの問題を抱えていましたが(ただし、DLLが異なります)、これで修正されました。うまくいくことを願っています。

于 2012-11-02T17:36:18.140 に答える
1

問題が何であるかはわかりませんが、.Net Framework 4 をインストールして試してみることをお勧めします。

ダウンロード リンクは次のとおりです: http://www.microsoft.com/en-us/download/details.aspx?id=17851

于 2012-11-02T17:31:10.487 に答える
0

DLL がビンにあることを確認します。プロパティ -> ローカルにコピー -> 常に

人々が自分のコンピューターに HookHandler.dll のようなあいまいながらくたを持っているとは期待できません :p

于 2012-11-02T17:39:48.613 に答える
0

わかりました、これは非常に奇妙でした。すべての行番号と本番環境でのすべてのグッズが必要なため、デバッグ構成を使用してビルドし、それを提供します。この情報は、Release バージョンを使用することによるわずかなパフォーマンスの改善に値するものでした (さらに、パフォーマンスは現在必要以上のものです)。

そうは言っても、C++ dll、pdf、ilk などのリリース バージョンを交換すると、問題が修正されます!!!!! そのため、それらが見つからないこととは何の関係もありませんでしたが、デバッグ構成でコンパイルされたため、いくつかのビジュアル スタジオ dll を使用して処理する必要がありました。

したがって、基本的にすべての C++ dll はリリース モードでコンパイルする必要がありますが、他のプロジェクトは現在デバッグ モードでコンパイルされており、問題は修正されています。

于 2012-11-08T20:07:54.227 に答える