2

MS Visual Studio 2008を使用して、2番目のライブラリ(helper.dll)に依存するC#ライブラリ(main.dllと呼びます)を作成しました。main.dllのデバッグバージョンで、helper.dllのデバッグバージョンへの参照を設定しました。しかし、main.dllのリリースバージョンをビルドするように切り替えると、出力フォルダーにはまだhelper.dllのデバッグバージョンが含まれています。ビルドタイプごとにhelper.dllのバージョンを選択する方法がわかりません。C ++では、ファイルを取得するフォルダーをリンカーに指示できましたが、C#でそれを行う方法がわかりません。

4

3 に答える 3

2

これを行う一般的な方法は、すべてのプロジェクトを1つのソリューションにまとめ、それらの間でプロジェクト参照を使用することです。次に、Debugをビルドすると、すべてのコンポーネントがビルドされ、debugとして参照されます。同様にReleaseの場合も同様です。

または、すべてのアセンブリに単一の出力フォルダーを使用し、そこから各バイナリを参照して、ビルド順序が正しいことを確認します。これにより、ビルドhelper.dll前にそのフォルダーにmain.dllビルドされます。ただし、これは失敗する可能性が高く、手動によるメンテナンスがより多く必要になります。

于 2013-03-11T15:01:20.570 に答える
1

デバッグからリリースに切り替えると、VisualStudioは出力用のbinフォルダーでデバッグからリリースに切り替わります。

main.dllの「常にコピー」プロパティをtrueに設定します。これにより、適切な出力フォルダーにコピーされ、常に参照されるようになります。

于 2013-03-11T14:59:45.180 に答える
0

2番目のライブラリhelper.dllが同じソリューションで同時にビルドされている場合は、.dllを直接参照する代わりに、プロジェクト参照を使用できます。次に、モードのソリューションレベルの構成をセットアップし、その方法Releaseで両方のプロジェクトをモードでビルドできReleaseます。

于 2013-03-11T15:00:59.267 に答える