私はディレクトリ内の.exeファイルをループして、.mspファイルを抽出しています。
それは静かに起こるのが理想です。「このファイルを実行しますか?」を取得せずにPowershellからファイルを実行します。ダイアログ
このバッチファイルコマンドは完全に機能します。
for %%g in ("C:\test\"*.exe) do %%g /quiet /extract:"C:\test"
このPowerShellスクリプトは、ほとんどそれが行わ取得します。
$exeFiles = Get-ChildItem -path $directory -recurse -include *.exe
foreach($file in $exeFiles)
{
$appArgs = '/quiet /extract:"' + $directory + '"'
Start-Process $exeFiles $appArgs -PassThru | Wait-Process
}
ただし、Windows 7は "このファイルを実行しますか?" までのスローダイアログ。
PowerShellを本当にサイレントにするにはどうすればよいですか?私は、彼らがいないなら疑うので、これはあなたの問題ですが、あなたは
for ($file in $exeFiles)
{
start-process $file (...etc)
}
ます。また、文字列として引数を渡しているのではなく、$ exeFiles変数にスタート・プロセスを呼び出している場合
こんにちはcalavera。応答していただきありがとうございます。変数名は、質問のコードを簡素化しようとしている間にタイプミスでした。彼らは修正されました。ありがとう。 引数を文字列として渡す限り、実際には完全に機能します。ネットワークドライブ上のファイルを解凍しようとするとセキュリティ問題が発生すると私は思っています。それをさらに見てください。 – GollyJer