• 締切済み

VS2010での依存関係

Visual Studio 2010にて、依存関係に関する質問です。 2つのプロジェクトを内包するソリューソンがあるとします。 片方はDLLで、「a.dll」とします。 もう片方はEXEで、「b.exe」とします。 この時、DLL側のソースを更新し、ビルドを行った場合 EXE側もビルドされるように設定したいのですが、 この場合どのように設定すれば良いのでしょうか? 「依存関係」の項目などは設定しています。

みんなの回答

回答No.2

 こんばんは。  プラグインか何かを作成しているのでしょうか。  http://msdn.microsoft.com/ja-jp/library/169az28z(v=VS.100).aspx  取りあえず、バッチビルドで出来る筈です。  バッチビルドダイアログを開いて、「DLLのプロジェクト」と「EXEのプロジェクト」のチェックボックスにチェックを入れます(Debug/Releaseの関係に要注意)。  以後は、DLLのソースを更新したら、メニューバー側からではなく、バッチビルドダイアログ側からビルドをしてください。  DLLがビルドされた後、DLLに重大な変更があったと判断されると、そのDLLに依存したEXEもビルドし直されます。  尚、プロジェクトがビルドされる順番は、プロジェクトの依存関係に基づきます。

tak_love
質問者

お礼

ありがとうございます。

  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.1

> この時、DLL側のソースを更新し、ビルドを行った場合 > EXE側もビルドされるように設定したいのですが、 必要ないはずですが? ビルドの意味を調べて下さい。 一般に、「ビルド」と呼ぶ場合は「部分ビルド」です。 「完全ビルド」が必要なら「リビルド」して下さい。

関連するQ&A

  • VS2010にて、依存関係とビルド順

    2つのプロジェクトを内包するソリューソンがあるとします。 片方はDLLで、「a.dll」とします。 もう片方はEXEで、「b.exe」とします。 EXEは「a.dll」を使用していて、「a.lib」をリンクしています。 (プロジェクトのリンカーの追加の依存ファイルに「a.lib」を記述) 依存関係も設定し、ビルド順はDLL,EXEの順になっています。 それで、DLL側のソースを更新し、ビルドを行いました。 結果、「a.lib」と「a.dll」が更新されました。 しかし、EXE側はビルドされませんでした。(更新不要で省略された) 「a.lib」をリンクしているので「a.lib」が更新されれば、 少なくともEXE側もリンク(ビルド)する必要があるはずです。 このような場合どのように設定すれば良いのでしょうか? ちなみに、それぞれを1つソリューソンに分け、 DLL側をビルド、EXE側をビルドとした場合は、 EXE側はリンク(ビルド)されました。 また、Visual Studio 2008以前はこのような事はありませんでした。 Visual Studio 2010になって、この辺りの処理が変わったのでしょうか?

  • *.exeと異なるフォルダのDLLをみにいく様に設定するには?

    環境 Windows VISTA SP1 Visual Studio 2008 今現在、ビルドすると、releaseというフォルダにA.exeが 作成されます。そして、同一のプロジェクトにDLL生成プロジェクトを 追加してあり、同じreleaseというフォルダに B.dllが生成される様に設定してあります。 この状態で、A.exeをたたけば、B.dllを認識して立ち上がってくれます。 しかし、最近、dllを作るプロジェクトが大量になってしまい、 releaseフォルダが結構たくさんになってしまっています そこでA.exeをたたいたら release/dll というフォルダをみにいって起動してくれる様に改良 したいのですが どうしたらよいでしょうか? *exeを追記しているslnのプロパティを一通りみたのですが よくわかりません。

  • visual studio 2015 exe 生成

    visual studio 2015のC++でWin32アプリケーションを作りました。 デバッグしようとしたところ、ビルドエラーが発生して、 「プログラム 'c:¥users¥documents¥visual studio 2015¥Projecst¥Win32project1¥Win32project1.exe'を開始できません。 指定されたファイルが見つかりません」と表示されます。 ソリューションのビルドは正常に出来ます。 そこでprojectのファイルを開いて見たのですが、確かにexeファイルが生成されていませんでした。 特に設定はいじってないです。 どうすればexeファイルが生成されるのでしょうか?

  • VS2013 ソースプログラム追加できない

    プログラムの統合開発環境Visual Studio2013について質問です。 ファイル→新規作成→プロジェクトでプロジェクトを作成することはできます。しかし、次にプロジェクト内にソースプログラムを追加しようとしても、プロジェクトメニューの追加の中に「新しい項目」のメニューがなく、ただプロジェクトが作成されただけになってしまいます。 以前は作成できました。設定が変わってしまったのでしょうか? 「新しい項目」のメニューを出す方法を教えてほしいです。

  • VistaでビルドしたexeがXPで動作しない。

    Visual Studio 2003 (OS:XP)で開発していたプロジェクトを、Visual Studio 2005(OS:Vista)に移行しているのですが、VistaでビルドしたexeをXPへインストールすると下記のエラーが表示され動作しません。 【表示されるエラー】 「プロシージャ エントリ ポイント _except_handler4_common が ダイナミック リンク ライブラリ msvcrt.dllから見つかりませんでした」 MFCのダイアログベースで、インストールはセットアッププロジェクトで作成したインストーラーを使用しています。 VistaでビルドしたexeをXPで動作させるには、どのようにしたら良いのでしょうか? 以上、よろしくお願いします。

  • VS2012でDirectXを取り入れたい

     こんばんは Visual Studio 2012 でDirectX SDKを取り入れたいのですが プロジェクト毎に設定していたら面倒くさくてかなわないです。 そこでプロジェクト作成毎に再設定しないような設定はどうすれば できるでしょうか? サイトを見てみてもあまりなのですごく困っています。

  • dll作成

    Visual studio2012利用し、 Win32プロジェクト から DLLを選んで、テンプレートに、関数を記入。ヘッダファイルを追加し、そこに関数の宣言を書いた。 ビルドすると、Debugフォルダに.dllは作成され、exeファイルが作成されない。 デバックなしで開始するとdllは開始できません。とメッセージがでます。 作成されたdllファイルの開始の仕方を、教えてください。

  • cppファイルを直接visual studioで開き、ビルドするには?

    cppファイルを直接visual studioで開き、ビルドするには? 私はvisual studio 2008を使ってプログラミングをしています。 いつもみたいに、プロジェクト作成→cppファイル作成って流れでやると普通に(ビルドやデバッグが)できるのですが、 プロジェクトを作成せず、裸のcppファイルだけをvisual studioで開くと、ビルドとか何もできません。実行して、コンソール画面を出したいのですが…。 出来る方法はあるのでしょうか? また、どうしてこの方法ではできないのかも、教えてくれるとありがたいです。 よろしくお願いします。

  • Visual StudioのF5一発で、変更があるプロジェクトのみビルドしなおしで、実行までの自動化方法についての質問

    質問内容についてまず、結論を書きます。2つあります。 いづれか一方だけの回答でもわかるのであれば、お願いします。 Q1 同一ソリューションファイルに、複数のexeとdllが存在する時に、 「ソリューションのビルド」(リビルドではないです)を実行または、F5キーを押して、実行の行為を おこなった時に、ソースに変更があったプロジェクトのみビルドしなおされるようにする方法を教えてください。 Q2 また、dllの参照設定に指定するdllは2つあるうちのどちらを設定すればよいかを教えてください。そして、その理由もできれば、お願いします。 ↑「2つあるうちのどちらを」はおそらく意味不明だと思いますので、以下の説明のなかで言及します。 <<以後補足説明>> A.exe、B.dll、C.dll、D.dll、E.exe から構成されるアプリケーションを開発中です。 ソリューションファイルのパスは、 C:\hoge\A\A.sln です Aプロジェクトのプロジェクトファイルは C:\hoge\A\A.vbproj プロジェクトファイルについては、A~Eまで同様で、 Aフォルダと、プロジェクトファイル名が、各自のアルファベットにかわっただけです。 2箇所にdllが出力されます。 ア) C:\hoge\B\bin イ) C:\hoge\B\obj\Debug A~Eもアルファベットが異なる、exeとdllが異なる以外は同様です。 Q2の「2箇所」はこれのことです。 Q1ですが、Bプロジェクトのあるソースを修正してF5で実行しても、 B内での変更内容が実行に反映されなかった。 参照設定が原因か?と、(ア)→(イ)に変更しても、結果は同じ。 ソリューションのリビルドまたは、 Bプロジェクト単独でビルドした後にF5キーを押すと、反映されますが・・ そこで、Q1の質問ですが、F5キー一発で、ソリューションのなかで、変更があったソースのプロジェクトのみビルドして、 実行するまでを一発で、やる設定方法はないでしょうか?

  • VS2010 で summary を生成するには?

    Visual Studio 2010 C# を1年ぶりに使ったのですが・・・・ PG中の関数の入り口部分の /// <summary> /// </summary> /// <returns></returns> という記述は(うろ覚えで悪いのですが)自動で生成されたような気がするのですが・・・・ 何か設定を変更するんでしょうか? (実験的なソースなんで新規でプロジェクトを作りました) もし勘違いだったらすみません。

専門家に質問してみよう