将导入模块与PowerShell PSSnapin Dll一起使用
我们有一个遗留的PowerShell PsSnapin(c#)。我想避免使用将导入模块与PowerShell PSSnapin Dll一起使用,powershell,powershell-module,import-module,pssnapin,Powershell,Powershell Module,Import Module,Pssnapin,我们有一个遗留的PowerShell PsSnapin(c#)。我想避免使用InstallUtil。以下内容将导入导出了PSSnapin cmdlet的模块: import-module .\MySnapin.dll 但是,当我运行module cmdlet时,由于无法找到引用的程序集(特别是企业库DLL),它们会失败 有没有一个简单的方法让它工作 (PsSnapin dll和所有引用的程序集都在同一个生成目录中,当我使用installutil时,所有依赖项都被正确解析)管理单元与模块有些不同
InstallUtil
。以下内容将导入导出了PSSnapin cmdlet的模块:
import-module .\MySnapin.dll
但是,当我运行module cmdlet时,由于无法找到引用的程序集(特别是企业库DLL),它们会失败
有没有一个简单的方法让它工作
(PsSnapin dll和所有引用的程序集都在同一个生成目录中,当我使用installutil时,所有依赖项都被正确解析)管理单元与模块有些不同。首先需要使用以下命令注册管理单元: 注册管理单元程序集后,可以使用
Add PSSnapin
将其加载到powershell会话中:
PS> Add-PSSnapIn MySnapin
事实上,这是我们通常做的,但我明确地试图避免InstallUtil。例如,我可以加载同一管理单元的两个版本,等等。啊,我明白了。我不知道这是否可行,但是:重命名一个版本,重新编译,注册两个版本,用
添加/删除PSSnapIn
在它们之间切换?
PS> Add-PSSnapIn MySnapin