2

同じVS2010ソリューションに2つのプロジェクトがあります。彼らは同じコードを再利用しており、VS2010で両方のプロジェクトの実行可能ファイルを同じ出力フォルダーにビルドする必要があります。

http://msdn.microsoft.com/en-us/library/ms165411.aspxによると、これは簡単ではないようです。

1つのビルドプロセスで以前にビルドしたものが削除される(または最初のビルド実行可能ファイルをフォルダーにコピーしない)ため、最後にビルドしたプロジェクトから実行可能ファイルを1つだけ作成します。

個別にビルドする場合は、それぞれの実行可能ファイルを個別にコンパイルして出力します。一方のプロジェクトはもう一方のプロジェクトに依存しています(一方がビルドを試行している間、一方がハンドルを長時間保持している可能性があるため、再利用されたOBJファイルへのアクセスの競合を解決するため)。

謎少し助けていただければ幸いです。

4

1 に答える 1

1

プロジェクトのプロパティ ページに移動し、両方のフォルダーの出力ディレクトリ フィールドを同じ場所 (絶対または相対場所) に変更することで、Visual Studio を任意のフォルダーにリダイレクトできます。2 つのプロジェクトに同じ名前を付けることはできません (実際には、実行可能ファイルの名前は、おそらく生成される他の補助ファイルとは異なる必要があります)。

上記で私はあなたの質問に答えましたが、あなたは間違った点から物事に取り組んでいると思います. 共通のコードがある場合は、ライブラリ プロジェクト/フォルダーを作成します。それをどこかに置き、ソースコード自体を各プロジェクトに追加して、各プロジェクトがそれを使用できるようにするか、実際にlibファイル内の関数のプロトタイプを含むヘッダーを使用してlibファイル自体を生成し、ヘッダーファイルと各プロジェクトの lib ファイル。Visual Studio の [VC++ ディレクトリ] タブを使用して、lib フォルダーとヘッダー ファイルを指定します。

これは通常、頭痛の種を回避できる正しいアプローチです (1 つのプロジェクトで誤ってソース コードを変更し、それが別のプロジェクトに影響を与えた場合。lib ファイルを使用すると、もう少し慎重な変更を行う必要があります)。

もう 1 つの利点は、クリーンアップしても毎回再コンパイルする必要がないことです (ソース コードをクリーンアップして使用すると、常に再構築されます)。

于 2012-11-28T21:04:13.750 に答える