2

私はC#でPowerShellモジュールを開発し、いくつかのコマンドを実装しました。

PowershellによってインポートされたときにこのモジュールでC#コードを実行するにはどうすればよいですか?

4

3 に答える 3

6

ModuleToProcess (または V3 では RootModule) フィールドを PSM1 ファイルに設定し、NestedModules を DLL に設定して、モジュール マニフェストを作成します。

RootModule         = 'Pscx.psm1'
NestedModules      = 'Pscx.dll' 

これは、同じことを行うPowerShell Community Extensionsで行うことです。つまり、最初にスクリプトを起動します。PSD1 ファイルはこちらでご覧いただけます

于 2013-01-30T18:49:12.843 に答える
0

これは非常に基本的なソリューションです。{} 内のコードをソースに置き換えるだけです。(以下の私のテスト)

add-type 'public class c{public const string s="Hello World";}';[c]::s

楽しい

于 2013-01-30T18:28:08.820 に答える
0

また、.NET でバイナリ コマンドレットを作成しています。少なくとも DriveCmdletProvider から継承するクラスを作成すると、そのクラスは InitializeDefaultDrives を実装できることがわかりました。

このメソッドは、DLL で import-module が呼び出されたときに呼び出されます。

この「機能」を使用して、一部のセッション (またはモジュール セッション) データを立ち上げることができます。

于 2016-01-29T06:34:58.950 に答える