掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
完成後に デバック? ビルド? (ID:139086)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
このあたりは、「ビルドの仕組」というお話になりますね。 一般的に、「ビルド」と呼ばれている処理は、「コンパイル」と「リンク」の 2段階の作業を行います。 「コンパイル」では、ソースコードをアセンブリコード (VB2008であればMSILですね)に変換します。 「リンク」では、コンパイルで生成したアセンブリコードとリソースなどの 周辺データを混ぜ合わせ、実際に動作するプログラムファイルを生成します。 で。 まずコンパイルの段階で、ソースコードから生成したアセンブリコードを、 一度ファイルとして保存します。 また、リンクの第一段階では、動作するプログラムファイルに混ぜ合わせる リソース等を、混ぜ合わせることのできる状態にまで組み合わせ、 やはりこの段階で一度ファイルとして保存します。 「obj」フォルダに生成されるファイルは、この段階のものです。 objフォルダに「プログラムを生成するのに必要なすべてのファイル」が 揃ったら、今度はリンクの第二段階として、これらのファイルを組み合わせて 実際に動作するプログラムを生成し、その結果をまたファイルとして保存します。 この「動作するプログラムの保存先」が「bin」フォルダです。 --- 「ビルド」にはおおまかに、「デバッグビルド」と「リリースビルド」の 2種類のビルド方法があります。 Visual Studioでは、Visual Studio IDE(開発環境プログラム)と連動して 1行ずつ実行したり、強制的に別の位置のコードまで実行ポインタを 移動させたりすることで、柔軟にデバッグ作業ができるようになっています。 「IDEと連動してデバッグできる状態で動作」するために、通常のビルドではなく、 あちこちにIDEと連動するための目印を埋め込んだり、デバッグ専用の コマンドまでコンパイルして生成するビルドが「デバッグビルド」です。 これはコンパイルの段階からデバッグ情報を埋め込んだコードを生成しますので、 コンパイル結果を「obj\debug」、ビルド結果を「bin\debug」に保存します。 しかしこのデバッグ情報付きビルドでは動作が遅く、またファイルサイズも 大きくなります。 完成した時点ではデバッグ情報はまったく必要なくなりますので、 大きくて重いだけ損です。 そこで、配布できる完成版を生成するために「リリースビルド」を行います。 リリースビルドのコンパイル結果は「obj\release」、ビルド結果は「bin\release」に 保存されることとなります。 --- Windowsアプリケーションプロジェクトがひとつだけのソリューションであれば、 ここまでで配布できます。bin\Releaseの中にあるファイルを全部コピーしてやれば いいんですね。 で、例えば、簡単なインストーラを作成したい時や、ClickOnceプログラムとして 配布したい時、またWebアプリケーションをWebサーバへアップしたい時などに、 「発行」を使います。 「発行」は、bin\releaceに保存されている「動作するプログラムファイル群」を、 発行ウィザードの中で指定した方法で配布/登録できるような形にまとめます。 「publish」は確かClickOnce用発行の結果を格納するフォルダだったと思います。 (すいません、ここはちょっとうろ覚え^^;)
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.