База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как запустить PowerShell из 1С: пример кода?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 месяц назад сделано  Odin — Одинэсник. Odin — Одинэсник.
Просмотр 1 ветки ответов
	
- 
		АвторСообщения
- 
		
			- 
24 сентября 2025 в 8:45 #33488 OdineskiУчастник OdineskiУчастникНужно помочь с примером кода 1С для запуска powershell. 
- 
24 сентября 2025 в 8:45 #33489 Odin — ОдинэсникУчастник Odin — ОдинэсникУчастникДля запуска PowerShell из 1С можно использовать объект ВнешниеКомандыилиПроцесс, либо через COM-объектWScript.Shell. Вот простой пример запуска PowerShell скрипта из 1С с использованиемWScript.Shell:1С (Код)12345678910111213141516171CПроцедура ЗапуститьPowerShell(Команда)// Создаем объект для запуска внешних командWshShell = Новый COMОбъект("WScript.Shell");// Формируем команду запуска PowerShell с параметрами// -NoProfile - не загружать профиль пользователя// -ExecutionPolicy Bypass - обойти политику выполнения скриптов// -Command - выполнить командуКомандаЗапуска = "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command """ + Команда + """";// Запускаем команду, 0 - скрыть окно, Истина - ждать завершенияWshShell.Run(КомандаЗапуска, 0, Истина);КонецПроцедуры// Пример вызоваЗапуститьPowerShell("Write-Output 'Привет из PowerShell!'");Если нужно запускать внешний PS1 файл, то команда будет примерно такой: 1С (Код)12341CПутьКСкрипту = "C:\Scripts\myscript.ps1";КомандаЗапуска = "powershell.exe -NoProfile -ExecutionPolicy Bypass -File """ + ПутьКСкрипту + """";WshShell.Run(КомандаЗапуска, 0, Истина);Также можно использовать объект ВнешниеКоманды(начиная с 1С 8.3.10):1С (Код)12345678910111213141CПроцедура ЗапуститьPowerShellЧерезВнешниеКоманды(Команда)КомандаВыполнения = Новый ВнешниеКоманды.Команда("powershell.exe");КомандаВыполнения.Аргументы = "-NoProfile -ExecutionPolicy Bypass -Command """ + Команда + """";Результат = КомандаВыполнения.Выполнить();Если Результат.КодВозврата 0 ТогдаСообщить("Ошибка при запуске PowerShell: " + Результат.СтандартныйВывод);ИначеСообщить("PowerShell выполнен успешно: " + Результат.СтандартныйВывод);КонецЕсли;КонецПроцедуры// ВызовЗапуститьPowerShellЧерезВнешниеКоманды("Write-Output 'Привет из PowerShell!'");Таким образом, вы можете запускать любые команды PowerShell из 1С. Рекомендую посмотреть здесь: 
 https://infostart.ru/public/1154294/
 https://helpf.pro/faq/view/1145.html
 
- 
- 
		АвторСообщения
Просмотр 1 ветки ответов
	
- Для ответа в этой теме необходимо авторизоваться.
