2011年5月4日水曜日

新規作成したプロジェクトからstdafx.hを完全に外す方法 - Visual C++

Visual C++
○2010 Express
Visual C++でプロジェクトを作成すると、stdafx.h が既定でインクルードされています。
stdafx.hを完全に外したい時は、ソースコード修正と合わせて、プリコンパイル済みヘッダーの設定を変更します。

o 主に、他のシステム用に作られたC言語のソースコードを、Windows用にビルドする時に使います。
    + コマンドプロンプト上でビルドする方法もありますが、移植の時は、Visual C++の画面上で作業する方が便利です。
o プリコンパイル済みヘッダーの設定を外さなくても、ビルド自体は成功します。
o stdafx.h は、自動作成された全てのソースコードから呼ばれています。通常は、そのまま使う方が便利です。


**** 手順
o 全てのソースコードから、stdafx.h のインクルード文を外します。
    + 次のように書かれている行を、削除します。
--------
#include "stdafx.h"
--------


o 次に、下記の手順で、プロジェクトのプロパティの「プリコンパイル済みヘッダー ファイル」から、「StdAfx.h」を外します。
    + 上のメニューから「プロジェクト(P)」-「(プロジェクト名)のプロパティ(P)   Alt+F7」
    +「プロパティページ」画面が出てきますので、左上の「構成」選択肢を「すべての構成」に変更します。
    + 左のメニューから、「構成プロパティ」-「C/C++」-「プリコンパイル済みヘッダー」
    + 右側で、「プリコンパイル済みヘッダーファイル」の右隣の文字「StdAfx.h」を削除します。
        + もしくは、「プリコンパイル済みヘッダー」の右隣の設定を、「プリコンパイル済みヘッダーを使用しない」に変更します。
    + 設定が終わりましたら、右下にある「OK」ボタンを押します。
o プロジェクトから外したいファイルを、削除もしくは除外します。
    + プロジェクトから外したいファイルを選択して、Deleteキーを押します。
    + 質問されますので、次のどちらかを選びます。
        + クリア = 選択したファイルをプロジェクトから外します。ファイルの削除はしません。
        + 削除 = 選択したファイルを削除します。プロジェクトからも外れます。
o リビルド、もしくはビルドしてみます。
    + そして、ビルドエラーの箇所を、順次修正していきます。


**** メモ
o この手順を行った時は、stdafx.cpp もきっと不要です。
    + 上記の手順を行うと、中身は空になっていると思います。


**** 確認したバージョン
o Microsoft Visual C++ 2010 Express


==
関連ページ:
    ▼Visual C++
    ▼コンピューター・プログラムを作る
    ▼制作メモ
    ▼目次
    > Win32コンソールアプリケーションをランタイム不要にする方法