使用后期构建事件在Visual Studio中重命名项目输出会生成错误

8
3个回答

13

这里是正确的后置构建事件命令。

rename "$(TargetPath)" "newname.exe"

2
第二个参数不能是路径。我花了很长时间才弄明白。 - Kobbe

9
我建议你进入项目设置并更改输出程序集名称。这将比使用后期构建事件要简单和可靠得多。
可能是因为当前的后期构建命令有一个未匹配的双引号,所以出现了问题,但我不会尝试修复它-我只会避免它。

对我来说,尽管我的程序集名称是其他的,但它仍然显示为setup.exe。 - Ben
@Webnet:你确定你不是在构建安装程序二进制文件吗?我从未见过除了安装程序之外的任何东西自动创建setup.exe文件... - Jon Skeet
我不知道...这是我的第一个C#应用程序,所以也许我是吗?我该如何检查和/或更改它,以便它变成MyApp.exe - Ben
1
@Webnet:好的,你有什么项目类型?说实话,你最好用所有相关信息开始一个新问题,而不是在这里留言。对于评论线程来说,这并不理想。 - Jon Skeet

2
我使用Post-Build来执行批处理文件和/或PowerShell脚本,以便进行任何你想要的操作:
Post-Build cmd:
if "$(ConfigurationName)" == "Release" start "Version" /D "$(SolutionDir)" /WAIT Version.bat

Version.bat:

@powershell -ExecutionPolicy Unrestricted -File "%~dp0Version.ps1"

IF ERRORLEVEL 1 (
    echo ERROR
    pause
) ELSE (echo OK)

Version.ps1:

# A lot of possibilities here
$scriptDirectory =  [System.IO.Path]::GetDirectoryName($MyInvocation.MyCommand.Definition)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接