Wenn ich versuche, etwas Verzeichnispfad in MSBuild Skript übergeben, wie folgt:Wie passieren Pfad mit Leerzeichen und Backslash zu MSBuild als Eigenschaft
MSBuild.exe myproj.proj /p:DirPath="C:\this\is\directory\"
Und in .proj Datei verwende ich es als
<PropertyGroup>
<FilePath>$(DirPath)file.txt</FilePath>
<PropertyGroup>
Dann komponiert MSBuild FilePath
als c:\this\is\directory"file.txt
. Wenn ich DirPath
ohne Anführungszeichen übergebe, aber mit Schrägstrich (/p:DirPath=c:\this\is\directory\
) oder ohne Schrägstrich, aber mit Anführungszeichen (/p:DirPath="c:\this\is\directory\"
), dann funktioniert alles gut.
Was kann getan werden, um Verzeichnispfad mit abschließendem Schrägstrich (es wäre bequemer) und in Anführungszeichen übergeben (da Pfad Leerzeichen enthalten kann)? Oder ist es ein Fehler in MSBuild, und ich sollte eine Problemumgehung verwenden, wie das Entfernen des nachfolgenden Backslashs nach dem Übergeben in MSbuild?
Haben Sie versucht, einfache Anführungszeichen? – leppie
@leppie Diese Eigenschaft wird vom Build-Skript und dem Tool für die fortlaufende Integration (FAKE-Build-Tool) übergeben. Daher habe ich hier keine Option. –