Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将导入模块与PowerShell PSSnapin Dll一起使用_Powershell_Powershell Module_Import Module_Pssnapin - Fatal编程技术网

将导入模块与PowerShell PSSnapin Dll一起使用

将导入模块与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时,所有依赖项都被正确解析)管理单元与模块有些不同

我们有一个遗留的PowerShell PsSnapin(c#)。我想避免使用
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