Я выполняю MSBuild из командного файла. Сценарий MSBuild находится в другом каталоге, чем каталог, который я хочу, чтобы MSBuild учитывал рабочий каталог при запуске сценария. Как вызвать MSBuild.exe, как мне изменить его рабочий каталог?
Редактировать: Подробнее
Допустим, у меня есть скрипт MSBuild, расположенный на каком-то другом сервере. Я хочу выполнить команду таким образом:
msbuild.exe \\my_server\c$\My\Path\To\Scripts\TestScript.msbuild
Я запускаю эту команду в командной строке по адресу c: \ temp. Допустим, у моего TestScript.msbuild есть задача создать файл. Файл не имеет пути, только имя файла. Я ожидаю, что файл будет создан внутри c: \ temp. Но он не создается рядом с файлом msbuild, который находится на сервере. Это поведение, которое я хочу изменить.
Редактировать # 2
Вот скрипт, который я использую в своем тесте:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Files Include="HelloWorld.txt" />
</ItemGroup>
<Target Name="TouchFiles">
<Touch Files="@(Files)" AlwaysCreate="True" />
</Target>
</Project>
Я собираюсь запустить командную оболочку в c: \ temp и затем выполнить скрипт. С параметром / p: OutDir или без него, о котором упоминает @Nick Nieslanik, файл HelloWorld.txt появляется в папке, где находится файл * .msbuild, а не c: \ temp.