7

C# コードから PowerShell スクリプトを実行する方法については非常に多くの質問と回答がありますが、実行空間/パイプラインが .ps1 ファイルの実行を正確にどのように実行するかを知りたいです

私が求めているコンテキストは次のとおりです。新しい Web サイトをセットアップする powershell スクリプト用の基本的な asp.net フロント エンドを構築しました。IIS にサイトを作成し、wwwroot フォルダー、ログ フォルダー、AD ユーザー、その他必要なものをすべてセットアップします。PowerShell で管理者として実行すると、完全に機能します。ただし、C# パイプラインを介して実行すると、パラメーター バインディングの例外でパイプが壊れます。

私はこの特定の問題に対する答えを求めているわけではありません。正確に何が起こっているのかをよりよく理解できるように、パイプラインがファイルを実行する方法の説明を探しているだけです。

4

2 に答える 2

4

実行空間がどのように機能するかについての完全な説明ではありませんが、主な部分をカバーするブログ投稿を書きました。

また、powershell の仕組みに関する msdn ページの 1 つからのスニペット:

Powershell ランタイムは実行空間として呼び出され、デフォルトでコマンドを同期的に処理し、処理の結果をホスト アプリケーションに配信して、ユーザーに返すことができるようにします。

于 2013-09-13T01:20:25.780 に答える
1

クラスのコードを表示するために、 ILSpyを使用するか、クラス ビューでクラスを開こうとしましたか? Microsoft が特定のクラスをどのように実装しているかを確認するために、私は常にこれを行っています。短い答えであれば、ここにコードを貼り付けますが、System.Management.Automation.Runspaces または Microsoft.Powershell 名前空間には多くのことがあります。Microsoft が Powershell スクリプトの実行をどのように実装しているかを正確に確認できます。

お役に立てれば。

于 2013-08-05T05:04:08.220 に答える