91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VC使用編譯時間作為版本號標識的方法

發布時間:2020-09-22 23:50:11 來源:腳本之家 閱讀:204 作者:mdxy-dxy 欄目:編程語言

常用方法分兩步:

1. 得到編譯時間;

2. 設置基準時間,以編譯時間距基準時間的總天數的2倍作為版本號,適當情況還可加上初值;

其中第一步實現有兩種方法:

1. 直接使用系統宏:CString OcxTime = __DATE__;
2. 在編譯選項的Pre-link Step中調用批處理文件.bat:

@echo off
echo #pragma once>"Ver.h"
echo #define APP_VER_NUM  "%data%">>"Ver.h"

其它網友的補充

使用宏__DATE__和__TIME__

CString strVersion,strBuildTime; 
strBuildTime = __DATE__; 
strBuildTime.Append(" "); 
strBuildTime.Append(__TIME__); 
COleVariant vtime(strBuildTime); 
vtime.ChangeType(VT_DATE); 
COleDateTime dateTime=vtime; 
SYSTEMTIME systime; 
VariantTimeToSystemTime(dateTime, &systime); 
CTime buildTime(systime); 
strVersion = buildTime.Format(" Builded %Y-%m-%d %H:%M:%S "); 

it一夢同學的補充

一般來說,發布的正式軟件都會包含程序的svn版本號以及軟件的編譯版本和編譯時間等信息,但是這些東西并不是默認就存在的,需要我們進行一些步驟的處理。具體做法有幾種,萬變不離其宗的是,利用SVN自帶的指令獲取到版本號以及當前時間,填充模板當中的占位符,最后用替換后的模板覆蓋資源文件即可。這里只講最簡單的一種:
a. 首先需要給VC程序添加資源文件,假設程序名為Test,則資源文件為Test.rc
b. 向資源文件中添加新的資源項——version,資源文件用記事本打開,增加了如下代碼:

VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,0,1
 PRODUCTVERSION 1,0,0,1
 FILEFLAGSMASK 0x17L
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
  BLOCK "StringFileInfo"
  BEGIN
    BLOCK "080404b0"
    BEGIN
      VALUE "FileDescription", "Test"
      VALUE "FileVersion", "1, 1, 1, 0"
      VALUE "InternalName", "Test"
      VALUE "LegalCopyright", "Copyright (C) 2015"
      VALUE "OriginalFilename", "Test.exe"
      VALUE "ProductName", "Microsoft"
      VALUE "ProductVersion", "V1.0"
    END
  END
  BLOCK "VarFileInfo"
  BEGIN
    VALUE "Translation", 0x804, 1200
  END
END

c. 接下來創建一個模板,利用SVN提供的占位符WCREV獲取版本號,WCNOW獲取編譯時間。模板可以直接復制Test.rc文件,更名為Test.rc2。修改上述代碼中的ProductVersion的值即可:

VALUE "ProductVersion", "V2.1.1.$WCREV$.(Build$WCNOW$)"

d. 那么何時進行占位符的替換,隨后替換程序的資源文件Test.rc,準確的將版本號與編譯時間編譯進程序呢?VS提供了一個Build Events配置,我們選擇Pre-Build Event,增加一行代碼如下:

SubWCRev $(ProjectDir) $(ProjectDir)\Test.rc2 $(ProjectDir)\Test.rc

代碼的意思是在程序編譯之前,用SVN的腳本工具SubWCRev獲取到工程目錄的SVN號以及當前的編譯時間,替換rc2文件中的占位符,覆蓋到rc文件中。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沐川县| 莆田市| 顺昌县| 郸城县| 芒康县| 文安县| 徐水县| 清苑县| 青铜峡市| 瓦房店市| 内丘县| 凉山| 清丰县| 安徽省| 怀来县| 元朗区| 阿坝县| 南陵县| 临沧市| 望奎县| 水富县| 陈巴尔虎旗| 贞丰县| 绍兴县| 通许县| 蒙山县| 玛曲县| 伽师县| 乡宁县| 辽阳市| 高安市| 宜春市| 安福县| 桐城市| 泰来县| 平阳县| 黑河市| 沧州市| 吴旗县| 项城市| 东至县|