COM Interop を介して VB6 実行可能ファイルで使用されるアセンブリが 1 つあります。このアセンブリは、他の .NET アセンブリを使用します (COM では使用できません)。VB6 アプリケーションの .manifest を定義したので、登録せずに .NET アセンブリを使用できます。また、サブディレクトリ ("bin") でアセンブリを検索するために、プローブ設定を使用して VB6 アプリケーションの .config を定義しました。
指定したサブディレクトリ ("bin") にすべての .NET アセンブリを配置すると、アプリケーションが正常に起動し、Interop-Assembly が他のアセンブリのコードを呼び出すまでアプリケーションを操作できます。その後、実行時エラー '429' が発生します: ActiveX コンポーネントはオブジェクトを作成できません。
.config ファイルをドロップしてすべてのファイルを同じディレクトリに配置すると、アプリケーションは期待どおりに動作します。
VB6 実行可能ファイルで使用される .NET アセンブリにプローブを使用することはできますか? 他のアセンブリが正常に配置されるように、正確にプローブをセットアップする方法はありますか?
.config
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin"/>
</assemblyBinding>
</runtime>
</configuration>