Powershell二进制模块

时间:2013-06-14 23:18:54

标签: c# powershell powershell-module

我有一个PowerShell模块,其基类派生自cmdlet,我的所有cmdlet都源于此。导入模块无法看到间接派生自cmdlet的任何类。我是否需要添加清单来支持此结构。

2 个答案:

答案 0 :(得分:2)

这可能是以下两个问题之一:

  • 这些课程不是public
  • 这些课程未使用[CmdletAttribute]
  • 进行修饰

这是一个最小功能的cmdlet:

[Cmdlet(Verb = VerbsCommon.Get, Noun = "Answer")]
public class GetAnswerCommand : PSCmdlet {
    public override void EndProcessing() {
        WriteObject(42);
    }
}

import-module-verbose一起使用,以查看有关可见内容的信息。对于二进制模块,您不需要清单(psd1)。

答案 1 :(得分:0)

您是否已将模块放入$env:PSModulePath

Import-Module会看到模块只放在上面的路径上。 (可选)您可以将模块的路径添加到$env:PSModulePath