C/C++ プロジェクトに Visual Studio 2010 を使用しています。バージョン番号に関する限り、私はリビジョンとビルドの日付を知りたいと思っています。たとえば、「プロジェクト 1.0 R2 2013 年 4 月 21 日」。起動時にこれを表示するので、誰かが古いバージョンを実行しているかどうかを簡単に判断できます。ここで、ビルドによって作成された実行可能ファイルのファイル名にこのようなものを入れたいと思います。たとえば、「Project10R2.exe」です。
ここにリストされているビルド マクロを使用します。ビルドの日付を表示するには、ここにリストされている定義済みのマクロを使用します。混乱の可能性を明確にするために、ビルド マクロは、たとえばプロジェクト プロパティから使用でき、「定義済みマクロ」と呼ばれるものは #define のものです。カスタムカスタムビルドマクロを定義できることを知っています(これを参照)(そして明らかに私が望む#define)。
今私が欲しいのは、一方を他方と一緒に使用することです。つまり、リビジョン文字列を 1 か所で定義し、それを起動時のプログラム出力 (#define で簡単) とビルド出力ファイル名 (カスタム $ マクロで簡単) の両方に表示したいと考えています。2 つの異なる定数を維持したくありません。
誰でもこれを行う方法を知っていますか? ビルド日付をファイル名に入れることさえできないようです (安全ではありませんが、Windows の %DATE% 環境変数を使用すると、不正な文字になってしまう可能性があります)。