【发布时间】:2012-06-25 06:33:45
【问题描述】:
我试图在 TFS 的构建过程中自动对我的项目进行 dotfuscate。
我在项目属性下创建了一个“Post-Build Event”,如下:
"C:\Program Files (x86)\PreEmptive Solutions\Dotfuscator Professional 版本 4.9\dotfuscator.exe" /in:"$(TargetPath)" /out:"$(TargetDir)Obfuscated\" /honor:on /strip:on /prune:off /rename:off /suppress:on /mapout:"$(TargetFileName).xml" /debug:pdb xcopy /S /R /Y "$(TargetDir)Obfuscated\$(TargetFileName)" "$(目标目录)"
当此事件开始时,我收到以下错误:
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (3717): 命令 ""C:\Program Files (x86)\PreEmptive 解决方案\Dotfuscator 专业版 4.9\dotfuscator.exe" /in:"C:\Builds\5\BIMS\Sandbox 分支私测手册 Build\Binaries\ProcessBookmarks.exe" /out:"C:\Builds\5\BIMS\Sandbox 分支私有测试手册 Build\Binaries\Obfuscated\" /honor:on /strip:on /prune:off /rename:off /suppress:on /mapout:"ProcessBookmarks.exe.xml" /debug:pdb xcopy /S /R /Y "C:\Builds\5\BIMS\Sandbox 分支私测手册 Build\Binaries\Obfuscated\ProcessBookmarks.exe" "C:\Builds\5\BIMS\Sandbox Branch Private Test Manual Build\Binaries\"" 以代码 4 退出。”
我已经对这个主题进行了数小时的研究、实验和谷歌搜索,但无法找出错误的解释。当我在本地运行构建时,命令工作得很好。任何帮助将不胜感激
编辑: 我已经多次尝试让 dotfuscator 通过命令行工作。我已确保 dotfuscator 命令在本地自行工作,但是当我运行构建定义时,dotfuscator 命令行以代码 1 退出,如下所示,我不知道如何修复它:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (3717):命令 ""C:\Program Files (x86)\PreEmptive Solutions\Dotfuscator Professional Edition 4.9\dotfuscator. exe" /in:"C:\Builds\5\BIMS\Sandbox Branch Private Test Manual Build\Binaries\ProcessBookmarks.exe" /out:"C:\Builds\5\BIMS\Sandbox Branch Private Test Manual Build\Binaries\混淆" /honor:on /strip:on /prune:off /enhancedOI:on /suppress:on /mapout:"C:\Builds\5\BIMS\Sandbox Branch Private Test Manual Build\Binaries\ProcessBookmarks.exe.xml" /debug:pdb" 以代码 1 退出。
我仍然无法让 dotfuscator 在我的自动化构建中工作,有没有人举个例子说明他们是如何做到的。我真的很感激这个问题的答案。
【问题讨论】:
-
您能分享一下您的输出窗口中显示的内容吗?
-
我已删除 xcopy 命令并尝试仅运行 dotfuscator 命令。该命令在本地工作并且正确地对文件进行dotfuscates并将其放在正确的文件夹中,但是当我运行实际的构建定义时,我现在退出了代码1。我无法在构建日志文件或输出窗口中看到可以共享的其他信息。
标签: .net build build-automation obfuscation dotfuscator