C# ベースの Windows フォーム アプリケーションに統合される PS スクリプトを作成しています。これは私が試した/すでに行ったことです:
実行空間とパイプラインを介して PS スクリプトを実行できますが、関数を使用するスクリプトを実行しようとすると、「現在のホストが実装していないため、この関数を呼び出すことができません」というエラーが発生します。
私はこの問題を調査しましたが、同様の問題に遭遇した人はほとんどいませんでしたが、次の $ConfirmPreference = "None", ,-Confirm:$false, -Force を使用 (追加) する必要があることを強調した解決策の 1 つ
しかし、試してみると、次のエラー メッセージが表示されました。「単項演算子 '-' の後に式がありません。」文字列を変数に割り当てて連結しようとしたことがわかりますが、役に立ちませんでした。解決方法がわかりません。誰かアイデアはありますか?どんな助けでも大歓迎です。
// create Powershell runspace Runspace runspace = RunspaceFactory.CreateRunspace(); // open it runspace.Open(); // create a pipeline and feed it the script text Pipeline pipeline = runspace.CreatePipeline(); //allow the functions to be exec string sa = "$ConfirmPreference = \"None\" "; string se = " -Confirm:$false -Force"; string s = sa +scriptText + se; pipeline.Commands.AddScript(s);