2017-03-22 9 views
0

私は、Delphiコードから絶え間なく呼び出しを試みているMatlab DLLを持っています。これを行うにはLoadlibrary()を使用し、エラー126 'module not found'を返します。kernel32.dllの依存関係がありません

私は、Dependency Walkerのおかげで、問題がkernel32.dllから発生する可能性があることを知りました。あなたは下のスクリーンショットで見ることができるように(私が理解されるような)は、Windows APIからその依存関係の多くは、欠落しているか見つからない:

dependencies

どのように私はこれらの不足しているDLLを入手できますか? Windows関連のものを再インストールする必要がありますか?

+2

いいえ、これには依存関係がありません。もちろん、「API-MS-WIN- *」は存在します。これは単純に依存関係ウォーカーは間違ってそれを処理する – RbMm

答えて

1

これらは偽陽性です。その出力は完全に正常です。特に、32ビットのDLLと64ビットのDependency Walkerを混在させている場合や、その逆の場合は、そのようなことが起こることがあります。

何が間違っているかを確認するには、依存関係ウォーカーでプロファイリングオプションを使用します。それは、DLLの読み込みプロセスを監視し、どこに失敗したかに関するレポートを提供します。

あなたの説明によれば、MatlabランタイムまたはMSVCランタイムの依存関係を解決できない可能性が高いという説明があります。

+0

MSVCランタイムdllの可能性が高い、私はそれが何dllを探している参照するには、負荷イメージフィルタでプロセスモニタを使用することをお勧めします。 https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx – Remko

+0

これは可能です。依存関係ウォーカーは、より集中的な方法で同じ情報を提供します。 –

+0

私はDependancy Walkerが静的にリンクされたDLLを越えることができるとは知らなかったが、何か新しいことを学んだと思う。乾杯... – Remko

関連する問題