How to put the build date of application somewhere in the application?

后端 未结 4 1934
南旧
南旧 2020-12-28 09:39

I would like to put the date the application was built somewhere in the application. Say the about box. Any ideas how this can be done? I need to do this for C# but I am als

相关标签:
4条回答
  • 2020-12-28 10:04

    Typically we just go with the executable's last modify date. This will be set when the exe is built and usually never changes (short of someone actually editing the file). When the file is installed, copied, moved, etc, Windows doesn't change that value.

    DateTime buildDate = 
       new FileInfo(Assembly.GetExecutingAssembly().Location).LastWriteTime;
    

    We use this technique for the about dialogs in our C# and C++ apps.

    0 讨论(0)
  • 2020-12-28 10:08

    There are usually keywords in your source code control system for this sort of thing.

    Otherwise, look at including the date and time in the version number, or simply creating a small source code file which contains the date and time, and gets included in the build

    0 讨论(0)
  • 2020-12-28 10:11

    The third number of the assembly version is a julian date with 0=1 Jan 2000 if you're using [assembly: AssemblyVersion("1.0.*")]

    e.g.

    DateTime buildDate = new DateTime(2000,1,1).AddDays(
      System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.Build
     );
    
    0 讨论(0)
  • 2020-12-28 10:23

    You should be using version control - Subversion is free. Then you could include a number from the version control system that would unambiguously identify the source code used to build the app. A date won't do that. There are other advantages too.

    • Full history of all changes to the project.
    • Work seamlessly with other developers on the same project.

    EDIT: Nikhil is already doing all this. But for some incomprehensible reason he has been told to include the date as well. I'm going to leave this answer here anyway, for future readers of this question.

    0 讨论(0)
提交回复
热议问题