Назад | Перейти на главную страницу

Запуск сценариев PowerShell как приложения в MDT 2013

Есть ли способ заставить скрипты PowerShell запускаться в списке приложений, чтобы при установке из образа MDT можно было выбрать, какие скрипты нужно запускать?

Я могу нормально запускать сценарии как сценарии, но каждая попытка, которую я пробовал, сценарии не выполнялась.

Вот как я пытаюсь это сделать, но они не выполняются. (Я ссылаюсь на сценарий в разделе «Установка приложений в разделе« Последовательность задач ». Пока я пришел к выводу, что Microsoft не позволяет сценариям PowerShell работать таким образом без серьезного взлома»).

РЕДАКТИРОВАТЬ:

Итак, попробовав несколько способов и проведя исследования, я получил следующее:

Я пробую это:

powershell -noexit "& "'\\SERVER.com\ImageDeploymentShare$\Scripts\script_tes_2t.ps1'

Рабочий каталог:

.\%SCRIPTROOT%

Но я получаю следующее:

Я видел что-то подобное на сайте technet, но неужели это до крайности?

Filename RunPowerShell.cmd
Powershell -Command Set-ExecutionPolicy Unrestricted
Powershell.exe -file "%~dp0%1"
Powershell -Command Set-ExecutionPolicy AllSigned

Filename App1.ps1
Dir

Execute this with
[fulle_Path_if_needed\]RunPowerShell.cmd App1.ps1

Я не знаю насчет MDT, но запуск сценариев PowerShell в UNC из командной строки выглядит примерно так: powershell -ExecutionPolicy bypass -file \\path\to\file.ps1.
Он работает из cmd (без каких-либо запросов безопасности):

в "команде тихой установки" вашего приложения:

powershell.exe -executionpolicy bypass -noprofile -noninteractive -file ".\[yourscriptfile].ps1"

Основная проблема заключается в том, что просто помещает файл ps1, поскольку команда - это политика выполнения, поскольку по умолчанию она ограничена. Даже при изменении политики выполнения на удаленную подпись скрипт не запустится, потому что это путь UNC.