2014-10-31 3 views
0

Я пытаюсь выполнить axbuild.exe (новый 64-разрядный компилятор для Dynamics AX) через powershell в неинтерактивном режиме, и он загружает первый экран, но затем процесс завершается.axbuild.exe nonInteractive | AX 2012 R3

При запуске из командной строки Windows открывается первый экран, закрывается, а через несколько секунд запускается несколько рабочих процессов и обрабатывается весь компилятор X ++.

Любые мысли ?? Предложения?

ответ

0

Вы должны запустить axbuild.exe с повышенными привилегиями (Запуск от имени администратора).

Если вы начинаете процесс абоненте из Task Scheduler вы должны поставить галочку в Выполнить с наивысшими правами вариант.

Task Scheduler - Run with highest privileges


В PowerShell можно выполнить Start-Process AxBuild.exe -Verb RunAs.

Вы можете проверить администратора привилегию со следующей фрагмент кода:

([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") 

См PowerShell: Running a command as Administrator, например.

+0

Я бег это в TeamCity, требует ли что-нибудь дополнительного? Он выполняет следующие действия: Запуск: C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell.exe -NonInteractive -ExecutionPolicy Bypass -File "C: \ Program Files (x86) \ TeamCity \ buildAgent \ temp \ buildTmp \ powershell2280810545960782468.ps1 " – silvanod

+0

Тот же скрипт отлично работает, когда я запускаю его вручную на том же компьютере, что и тот же пользователь, с помощью -Verb RunAs. Но даже с этим дополнительным переключателем в скрипте он не будет работать при запуске через TeamCity. – silvanod

1

У меня возникли проблемы с Start-Process (с повышенными привилегиями), но в последнее время я перешел в команду & и он работает как шарм, так:

$axBuild = Join-Path $axServerBin "\AxBuild.exe" 
$axCompiler = Join-Path $axServerBin "\ax32serv.exe" 
& $axBuild 'xppcompileall' /compiler="$axCompiler" /log="$scriptPath" /altbin="$axClientbin" 
Смежные вопросы