0
我有一個非常惱人的問題,關於dotfuscator和帶空格的路徑。我有一個是通過生成後事件調用下面的語法.bat文件:dotfuscator進/出路徑中的空格
call "$(SolutionDir)..\Build\dotf.bat" $(SolutionDir) $(ConfigurationName) $(TargetPath) $(TargetDir).
.bat文件看起來是這樣的:
SET DOTFPATH="%1..\Tools\DotfuscatorProEdition4.13.0\dotfuscator.exe"
SET DEBUG=%2
SET TARGETFILE=%3
SET OUTPUT=%4
if "%DEBUG%" == "Release" (
%DOTFPATH% /q /in:"%TARGETFILE%" /out:"%OUTPUT%"
) ELSE (
echo DOTFUSCATOR: Skipped due to debugmode
)
.bat文件臨危參數,併產生一個像這樣的命令:
"C:\some\path\to\dotfuscator.exe" /q /in:C:\a\path\toproject\Mydll.dll /out:C:\a\path\toproject\
.bat文件在本地很好地工作。但在構建服務器上,解決方案和項目路徑具有空格,如下所示:
"C:\some\path\to\dotfuscator.exe" /q /in:C:\a\path\to project\Mydll.dll /out:C:\a\path\to project\
哪一個課程會混淆參數。所以,我試着用這樣的quotationmarks圍住路徑:
"C:\some\path\to\dotfuscator.exe" /q /in:"C:\a\path\to project\Mydll.dll" /out:"C:\a\path\to project\"
此修復.bat文件和參數解析,但Dotfuscator的本身現在失敗草草收場! Dotfuscator現在抱怨「路徑中的非法字符」。我該如何解決?
我確定我沒有使用雙引號標記,所以不能這樣做。但改變目錄聽起來像一個應該工作的解決方案!我不敢相信我自己並沒有想出這個簡單的解決方案!明天會試試看,謝謝。 – sundown 2014-10-19 11:17:10