いくつかのネイティブ コード コントロールをラップするマネージド C++ でカスタム UserControl を作成しました。実行時にコントロールが機能することを確認し、デザイナー ツールボックスからコントロールをドラッグ アンド ドロップできるようにすることで、Visual Studio デザイナーでコントロールを機能させようとしています。
UserControl をツールボックスに正常に追加しましたが、コントロールを Windows フォームにドラッグしても何も起こりません。この問題を調査するために、2 つ目の Visual Studio 2008 インスタンスを開き、そのデバッガーを、UserControl を使用しようとしている devenv.exe インスタンスにアタッチしました。UserControl を Windows フォームにドロップした後、Visual Studio デバッガーは、UserControl を含むモジュールを読み込もうとすると、mscorlib.dll に FileNotFoundException を出力します。
デザイナーがプロジェクトの出力パスから dll をロードするのではなく、%UserData%\VisualStudio\9.0\ProjectAssemblies\ RandomFolderNameフォルダーにアセンブリのコピーを作成することに気付きました。ただし、モジュールの依存関係はコピーされません。これが FileNotFoundException の原因であると私は信じています。
この問題を解決する方法はありますか? dll を ProjectAssemblies フォルダーにコピーするときに、Vistual Studio がすべてのアセンブリの依存関係をコピーするのが理想的ですが、これを実現する方法がわかりません。