Объявление пути динамического профиля в MsBuild - PullRequest
2 голосов
/ 13 января 2010

В настоящее время я пытаюсь скопировать файл в папку внутри профиля пользователя, но столкнулся с проблемой при объявлении динамического имени профиля, например ::

<Target Name="CopyScript">
    <MsBuild Projects="JsProject.csproj" />
    <Copy SourceFiles="$(ProjectDir)\myScript.js" DestinationFolder="$(systemdrive)\Documents and Settings\$(userProfileName)" />
</Target>

Каков синтаксис объявления динамического имени профиля пользователя? Нужно ли откуда-нибудь получать имя профиля или есть другая задача MsBuild, которая его найдет для меня?

Спасибо.

1 Ответ

6 голосов
/ 14 января 2010

Вы должны быть в состоянии получить это с помощью переменных env HOMEDRIVE и HOMEPATH. Например:

<Project ToolsVersion="3.5" DefaultTargets="Demo" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <PropertyGroup>
  <UserDir>$(HOMEDRIVE)$(HOMEPATH)</UserDir>
 </PropertyGroup>

  <Target Name="Demo">
 <Message Text="UserDir : $(UserDir)" Importance="High" />
  </Target>

</Project>

При выполнении цели Demo вы должны получить путь к домашнему каталогу текущих пользователей.

...