C#で実装された1つのCmdletと、psm1ファイルで提供されるいくつかの高度な機能を含むPowershellモジュールを作成しました。モジュールをロードするときは、高度な機能で実装された機能だけがエクスポートされます。モジュールからエクスポートされていないバイナリPowershellコマンドレット
私はモジュールの一部としてロードするアセンブリを登録した機能をエクスポート:
RequiredAssemblies = @("lib\provider.dll","lib\myCmdlet.dll")
FunctionsToExport = @('New-assemblyFunction','New-advancedFunction')
はまた、私は、コマンドレットを提供するためのアセンブリcmdlettoexportと上記functionstoexportを混合することを試みました。組み合わせのすべての種類は、任意の成功を示さなかった。
CmdletsToExport = @('New-assemblyFunction')
私は冗長モードでインポートモジュールを起動した場合、私はアセンブリがロードされているが、高度な機能で実装する機能のみが輸出されていることがわかります。 New-assemblyFunctionは、詳細レポートのどこにも表示されません。
DLLを手動で読み込み(import-module)、コマンドレットを使用できます。 ここで何が間違っているのか、さらに分析するにはどうすればよいですか?私はそれらのすべてをブロック解除しました。
'RequiredAssemblies'キーの値はPowerShellモジュールと見なされません。 'RootModule'(' ModuleToProcess')または 'NestedModules'キーを使う必要があります。 – PetSerAl
それだけです!ありがとうございました!私はそれをNestedModulesとして追加し、関数がエクスポートされました。 – Joel