1

IntelliLock 1.5で、dllのプリズムモジュールの1つがロードを停止(ユニティ)した後、エラーメッセージは次のようになります。「誤った形式のプログラムをロードしようとしました。(HRESULTからの例外:0x8007000B)」</ p>

最初に、いくつかの共有オブジェクトを保持するポータブルライブラリ(.net、Silverlight 4)への参照がありました。また、ポータブルライブラリにはUIがなく、System.Windows dllへの参照もありませんでしたが、エラーは「ライブラリSystem.Windowsを参照できません」のようなものでした。しかし、IntelliLockを調整し、問題がどこにあるかを把握しようとした半日後、「誤った形式のプログラムをロードしようとしました。(HRESULTからの例外:0x8007000B)」エラーで団結が崩壊し始めます。

最初に私はポータブルdllを参照する際の問題を考えました。このライブラリを通常の.netライブラリに置き換えましたが、エラーは同じです。

.Net4クライアントプロファイルを使用しています。WPF、C#、Prism 4、ユニティ。

それを修正する方法はありますか?

4

2 に答える 2

1

しばらく前に同様の(??)問題が発生したので、次のことをお勧めします。

1)すべての依存関係が満たされているかどうかを確認します。DependencyWalkerを実行し、赤い線がないことを確認します-欠落しているものはありません(たとえば、IEShims.dllが欠落しているとマークされることがあるので、ドキュメントを読んでください)-正しいバージョンのDependecyWalker(x86 / x64)を正しく使用してくださいcomp

2)Denis Kucherovはすでに悲しいので、親および/または子(依存)オブジェクトがどのようにコンパイルされたかを確認してください。x64ビットマシンでデフォルトで「AnyCPU」としてコンパイルされた.NETプロジェクトを使用して、x86用にコンパイルされたC ++DLLを参照でロードしようとすると-nogo->例外、例外、クラッシュ...

3)ハードコアレベル-SysinternalsからProcess Monitorを実行し、欠落している/見つからないエラーがあるかどうかを確認します(存在する場合)。それは時々大げさなリストです...

ロードしようとしているDLLは実際にはロードできますが、それ自体は存在しない他のDLLに依存していると思います

PSあなたは.Netクライアントプロファイルについて言及しています-完全な.NETFrameworkで一度試してみて、それが役立つかどうかを確認してください-もしそうなら-ターゲットコンプにインストールされている.NETクライアントプロファイルを再確認してください

于 2012-04-17T13:23:10.403 に答える
1

Rupが示唆したように、これは完全にInTelliLockのバグでした。一部のライブラリのロック設定を無効にするだけで、なんとか克服できました。良い新機能は、問題が難読化ではなくロジックのロックにあったことです。問題を解決するのに数日かかりました。

私はまだサポートチームからの回答がありません、そして前に言ったように私は実際にそれを期待していませんでした。

于 2012-05-15T08:04:29.397 に答える