2014-09-24 174 views
0

增加版本的RC文件我已經RC文件這樣使用批處理腳本

FILEVERSION 1,0,0,1 
PRODUCTVERSION 1,0,0,1 
VALUE "FileVersion", "1, 0, 0, 1" 
VALUE "ProductVersion", "1, 0, 0, 1" 

需要使用批處理文件遞增的產品版本和文件版本的值作爲1,0,0,2

回答

0

這裏的解決方案:

@echo off 
setlocal enabledelayedexpansion 
for /f "eol=; tokens=1,2,3,4,5,6 delims=, " %%i in (rc) do (
    if "%%i"=="FILEVERSION" (
     set /a a=%%m+1 
     set /a b=%%n+1 
    set s1=%%j,%%k,%%l,%%m 
    set s2=%%j, %%k, %%l, %%m 
    set r1=%%j,%%k,%%l,!a! 
    set r2=%%j, %%k, %%l, !a! 
    ) 
) 

for /f "eol=; tokens=* delims=, " %%i in (rc) do (
    SET e=%%i 
    SET f=!e:%s1%=%r1%! 
    SET f=!f:%s2%=%r2%! 
    echo !f! 
) 

像這樣運行

inc.bat > rc.tmp && move rc.tmp rc 
+0

我的文件將是這樣的: – Dhinesh 2014-09-24 12:16:22

+0

VS_VERSION_INFO VERSIONINFO FILEVERSION 2,0,0,1 的ProductVersion 2,0, 0,1 FILEFLAGSMASK 0x3fL BLOCK「StringFileInfo」 BEGIN BLOCK「000904b0」 BEGINVALUE「FileName」,「」 VALUE「FileFersion」,「2,0」 VALUE 「產品名稱」, 「」 VALUE 「的ProductVersion」, 「2,0,0,1」 END END BLOCK 「VarFileInfo」 BEGIN VALUE 「翻譯」,0x9,1200 END END – Dhinesh 2014-09-24 12:19:42

+0

而運行你的腳本我得到的輸出爲2,0,0,1但預期的輸出是1,0,0,2 – Dhinesh 2014-09-24 12:21:15