2

ビジュアル インターフェイス (GUI - Windows フォーム要素を使用) で実行したい PowerShell スクリプトがあります。これまでのところすべてが機能していますが、大きな問題が 1 つあります。

作成したWindowsフォームにPowerShellからコマンドペインを表示することはできますか? : PowerShell スクリプトの一部で、次のコマンドを実行しています。

Upgrade-SPContentDatabase DBName

このコマンドは、PowerShell からコマンド ペインに通常表示される "はい/いいえ" でいくつかのメッセージを確認する必要があります...これを Windows フォームで実行して、PowerShell スクリプト ウィンドウをバックグラウンドで非表示にできますか?

または、表示される新しいウィンドウに表示する他の方法はありますか?

スクリーンショット: ここに画像の説明を入力

何か案は?

4

1 に答える 1

0

( messageboxGUI) はプロンプトとは異なります。(ISE ではなく)powershell コンソールでスクリプトを実行している限り、コンソールにプロンプ​​トが表示されます。(ISE のように GUI にする設定があるかもしれません)。回避策は、スクリプトの確認プロンプトを無効にして、messagebox自分自身を作成することです。

ボタンのクリックハンドラーで次のことを試してください。

$handler_button1_Click= 
{
    $n = [System.Windows.Forms.MessageBox]::Show("Are you sure?", "Confirm", [System.Windows.Forms.MessageBoxButtons]::YesNo)
    if ($n -eq "Yes") {
        #Ignore confirm dialogs with -Confirm:$false
        Upgrade-SPContentDatabase DBName -Confirm:$false
    }
}
于 2013-05-26T18:55:48.643 に答える