C#MLで、コンパイル日付などが取得したいとの話が出ました。
もともとはVC++等の__DATE__, __TIME__に変わるものは?ということでしたが、ただアセンブリのコンパイル時間を取得したいだけなら簡単です。
以下のソースをささっとコンパイルしてコマンドラインで
c:\>VersionStringToDate 2200.12345
と下2つの数字を指定してください。それがコンパイルされた日時です。
exeもあるんですけどねー
using System;
namespace ConsoleApplication1
{
/// <summary>
/// Class1 の概要の説明です。
/// </summary>
class VersionStringToDate
{
/// <summary>
/// アプリケーションのメイン エントリ ポイントです。
/// </summary>
[STAThread]
static void Main(string[] args)
{
//
// TODO: アプリケーションを開始するコードをここに追加してください。
//
if ( args.Length != 1 )
{
System.Console.Out.WriteLine("引数に4400.11230のようにバージョンの4桁の下2つを指定してください。");
return;
}
string[] SplitString = args[0].Split('.');
if ( SplitString.Length != 2 )
{
System.Console.Out.WriteLine("引数に4400.11230のようにバージョンの4桁の下2つを指定してください。");
return;
}
DateTime dt = new DateTime(2000, 1, 1 , 0, 0, 0);
dt = dt.AddDays(Convert.ToDouble( SplitString[0]));
dt = dt.AddSeconds(Convert.ToDouble( SplitString[1]) * 2);
Console.Out.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss"));
Console.ReadLine();
}
}
}