none
C# 2008 のソースを VS C# 2010 に変換した際の、実行ファイルの出力先について RRS feed

  • 質問

  • みなさん、こんにちわ! お世話になります。
    早速、質問をさせてください。

    Visual C# 2008 のソースを Visual Studio 2010 に変換ウィザードを介して読み込み
    ビルドしてみました。

    その結果アプリAでは、これまでと同じようにビルドすると【Release】フォルダー
    に実行ファイルが生成されますが、アプリBでは思ったように実行ファイルが生成
    されませんでした。

    そこで、各アプリのプロパティーの違いを探した所、タブ【ビルド】の【構成】が、

     A:アクティブ(Release)
     B:アクティブ(Debug)
     
     【出力パス】が、A:bin\Debug\
             B:bin\Release\

    となっています。

    【構成】のコンボで アクティブ(Release)がセットされている必要があるのでは
    ないかと思いますが、その方法がよく分かりません。
    また、なぜ変化してしたったのか、なぜアプリによって異なる設定になるのか、その
    仕組みが分からず困っています。

    C# 2008 で同じように扱っていたソースを同じように Visual Studio 2010 に変換した
    つもりなのですが・・・・・

    取りあえずは、生成した実行ファイルの出力先を bin\Release\ のしたいので、
    その方法をご教授頂ければ幸いです。
    併せて、この辺りの仕組みについても勉強するためのヒントなど、教えて下さい。

    また、その他のも気がついていないが影響が出ていないかも心配です。
    チェックする箇所などについても宜しくお願いします。

    2010年11月29日 2:37

回答

  • そこで、各アプリのプロパティーの違いを探した所、タブ【ビルド】の【構成】が、

     A:アクティブ(Release)
     B:アクティブ(Debug)
     
     【出力パス】が、A:bin\Debug\
             B:bin\Release\

    となっています。

    後から気づいたのですが、これは逆ではありませんか?

    ソリューション構成のコンボボックス(ツールバーにあるはずです)が「Release」であれば、bin/Release、ソリューション構成が「Debug」であれば、bin/Debug になります(デフォルト値のままであれば)

    ですので、ソリューション構成のコンボボックスでReleaseを選べばOKのはずです。

    プロジェクトファイル(csproj)はただのテキストファイルですので、詳しく知りたければエディタで開いてみてください。

    こんな設定があるはずです。

    <PropertyGroup>
      <OutputPath>.\bin\Debug\</OutputPath>
    </PropertyGroup>
    
    

    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年11月29日 3:26

すべての返信

  • こんにちは。

    こちらが参考になると思います。

     セットアッププロジェクトの「デバッグ」と「リリース」の区別


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年11月29日 2:59
  • そこで、各アプリのプロパティーの違いを探した所、タブ【ビルド】の【構成】が、

     A:アクティブ(Release)
     B:アクティブ(Debug)
     
     【出力パス】が、A:bin\Debug\
             B:bin\Release\

    となっています。

    後から気づいたのですが、これは逆ではありませんか?

    ソリューション構成のコンボボックス(ツールバーにあるはずです)が「Release」であれば、bin/Release、ソリューション構成が「Debug」であれば、bin/Debug になります(デフォルト値のままであれば)

    ですので、ソリューション構成のコンボボックスでReleaseを選べばOKのはずです。

    プロジェクトファイル(csproj)はただのテキストファイルですので、詳しく知りたければエディタで開いてみてください。

    こんな設定があるはずです。

    <PropertyGroup>
      <OutputPath>.\bin\Debug\</OutputPath>
    </PropertyGroup>
    
    

    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    2010年11月29日 3:26
  • J.Hashimoto さん、早速有り難うございます。

    失礼しました。
    【出力パス】の件はご指摘の通り、間違えて逆に書いてしまいました。

    所で、ツールバーにある『ソリューション構成のコンボボックス』を探しましたが
    何処にあるのか分かりませんでした。

    で、あちこち探している内に、ソリューションのプロパティに在る【構成プロパティ】
    を見ると【構成】のコンボがあり、ここで試しに【Release】を【適用】してみました。

    すると、先のプロジェクトのプロパティにあるアクティブ(Debug)がアクティブ(Release)
    に変わりました。

    この状態でビルドを試みた所、bin\Release\ に実行ファイルが生成されました。

    よく分からないまま、目的の場所にファイルが作られるようになったのですが、これで、
    良いのでしょうかネ???

    教えて頂いた、プロジェクトファイル(csproj)の中を見ましたが、似たような記述は
    ありますが、もう一つスッキリしません。
    変換するソースによって、この辺りの設定がバラバラになってしまう理由など、まだまだ
    理解力が不足しているため良く理解できませんが、もう少し努力してみます。

     

    2010/12/1 追記

    変換ウイザードを介して読み込んだソースへの対応はできましたので、この項は一旦
    クローズさせて頂きます。

    色々試している内に、新たに Visual Studio 2010 の実行ファイル生成先に関する
    疑問が出てきましたが、これは別スレッドにて質問させて頂く事にします。

    どうも、有り難うございました。

    2010年11月29日 5:00