msbuild, звонящий powershell сценарий под окнами 7, получает ошибку подписания

У нас есть сценарий сборки powershell, который обращается к другим сценариям, который дает мне проблему в соответствии с Windows 7 64 бита. Это хорошо работает под XP. Я выполнил набор-executionpolicy на RemoteSigned (и также попробовал его Обходом и Неограниченный). Я могу вытянуть командную строку из сообщения об ошибке и выполнить его сам, и все это хорошо работает.

Ошибки сборки выглядят ужасными здесь; но я включаю их так или иначе для полноты.


Project "C:\dev7\Source\DashPortal\DashboardGenerator\DashboardGenerator.csproj" (2) is building "C:\dev7\Source\DashPo
rtal\DashboardController\DashboardController.csproj" (15) on node 0 (default targets).
  File C:\Users\pmckinney.NA\Documents\WindowsPowerShell\profile.ps1 cannot be lo
  aded because the execution of scripts is disabled on this system. Please see "g
  et-help about_signing" for more details.
  At line:1 char:2
  + . <<<<  'C:\Users\pmckinney.NA\Documents\WindowsPowerShell\profile.ps1'
      + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
      + FullyQualifiedErrorId : RuntimeException

  File C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportI
  nstallScript.ps1 cannot be loaded because the execution of scripts is disabled
  on this system. Please see "get-help about_signing" for more details.
  At line:1 char:87
  + C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportInst
  allScript <<<<  -t C:\dev7\Source\DashPortal\DashboardController\..\..\..\Sourc
  e\DashPortal\DashboardReports\ReportSetupScriptTemplate.sql -l C:\dev7\Source\D
  ashPortal\DashboardController\..\..\..\Source\DashPortal\DashboardReports\Repor
  tSetupReportList.xml -c C:\dev7\Source\DashPortal\DashboardController\..\..\..\
  Source\DashPortal\Config
      + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
      + FullyQualifiedErrorId : RuntimeException

C:\dev7\Source\DashPortal\DashboardController\DashboardController.csproj(265,5): error MSB3073: The command "powershell
 C:\dev7\Source\DashPortal\DashboardController\..\..\..\Build\createReportInstallScript -t C:\dev7\Source\DashPortal\Da
shboardController\..\..\..\Source\DashPortal\DashboardReports\ReportSetupScriptTemplate.sql -l C:\dev7\Source\DashPorta
l\DashboardController\..\..\..\Source\DashPortal\DashboardReports\ReportSetupReportList.xml -c C:\dev7\Source\DashPorta
l\DashboardController\..\..\..\Source\DashPortal\Config" exited with code 1.
14
задан Pete McKinney 14 January 2010 в 18:58
поделиться

2 ответа

Просто предположение: Вы выполнили Set-ExecutionPolicy в x64 PowerShell, а сборка запускает x86 PowerShell?

Возможно, попробуйте Get-ExcutionPolicy в обеих оболочках.

23
ответ дан 1 December 2019 в 12:26
поделиться

Редактирование: ой, я вижу, что вы уже включили сценарии. Это - возможно что-то, чтобы сделать с контекстом, под которым работает MSBuild. Вы запускаете MSBuild как учетную запись локальной службы некоторого вида?

Edit2: ясно, что сообщение об ошибке обманчиво. Существует что-то еще, продолжение и стратегическая ошибка выполнения бросаются, но не по ожидаемой причине. Возможно, как способ изолировать, попытайтесь создать другую задачу MSBuild, которая выполняет ту же строку, но с короче, hardcoded пути вместо /././. / золотое дно выше?

0
ответ дан 1 December 2019 в 12:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: