繁体   English   中英

Visual Studio生成后事件和批处理命令

[英]Visual Studio Post-Build Events and Batch Commands

我没有找到任何内置的替代方案,因此我在项目中使用以下构建后命令来获取生成的程序集版本:

FOR /F "tokens=4" %%F in ('$(SolutionDir)Tools\FileVer.exe /A /B /D !DESTINATION!\MyApplication.exe') DO SET VERSION=%%F
SET VERSION=!VERSION:~0,5!

FileVer是一个免费工具,可以从此页面下载。 现在...我需要检索除修订版以外的所有版本组件。 这就是为什么我使用该命令来获取命令结果的子字符串的原因。 问题是,仅当每个版本组件只有一个数字长时,它才能像超级按钮一样工作。 因此,例如,如果我有:

1.0.0.0

它将正确检索:

1.0.0

但是如果我有:

1.12.0.0

我会得到一个错误的结果:

1.12。

是否有更好的方法来获得最终的装配版本而无需修订零件且无需使用外部工具?

应该这样做:

FOR /F "tokens=3 delims=." %%F in ('$(SolutionDir)Tools\FileVer.exe /A /B /D !DESTINATION!\MyApplication.exe') DO SET VERSION=%%F.%%G.%%H

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM