Я копался в этом некоторое время, но я не мог понять, как это работает. Что мне нужно это:
- Уметь запускать командный файл
- Пакетный файл должен иметь параметры
- Параметры должны быть переданы из командного файла в сценарий PowerShell, который находится в том же файле
Зачем мне это нужно? Потому что мне нужно запустить простой командный файл, чтобы сделать что-то, но мне нужны расширенные функциональные возможности, которые работают только из PowerShell. Конкретно: мне нужно какое- SaveFileDialog
то приложение.
Вот то, что у меня есть сейчас, где я удалил сложные части SaveFileDialog
и оставил простую партию + часть PowerShell:
<# :
@echo off
setlocal
powershell -noprofile "iex (${%~f0} | out-string)"
goto :EOF
#>
Write-Host "Hello, I'm PowerShell!"
Если я ставлю все это в пакетном файле, скажем, myfile.bat
. Он запускается и вызывает PowerShell и записывает это сообщение.
Мой вопрос / запрос : как я могу запустить myfile.bat param1 param2 param3
и передать эти аргументы / параметры в мой скрипт PowerShell? Я действительно ценю минимальный пример, который просто печатает параметры через powershell write-host
.
Пожалуйста, не стесняйтесь спрашивать более подробную информацию. Спасибо!