如何从共享服务器导入splitpipeline模块?

时间:2014-07-03 16:16:37

标签: powershell

我的脚本使用Powershell splitpipeline模块来引入并行进程和队列功能。

脚本和模块存储在共享服务器上,如\ server \ c $,这个想法可以从任何计算机上运行。

试图开始编写脚本import-module \\server\c$\SplitPipeline,但我收到了错误:

import-module : Could not load file or assembly 'file://\\server\c$\SplitPipeline\SplitPipeline.dll' or one of its dependencies.
Operation is not supported. (Exception from HRESULT: 0x80131515)
At D:\scripts\powershell\OstReport_BETA-PIPE.ps1:6 char:1
+ import-module \\server\c$\SplitPipeline
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Import-Module], FileLoadException
    + FullyQualifiedErrorId : FormatXmlUpdateException,Microsoft.PowerShell.Commands.ImportModuleCommand

如果我尝试将它从srv复制到pc:

Copy-Item -Path \\server\c$\SplitPipeline -Destination C:\windows\system32\WindowsPowerShell\v1.0\Modules -recurse -force

我拒绝访问

任何想法?

感谢

1 个答案:

答案 0 :(得分:3)

您遇到的问题是,无需特殊配置,无法从不受信任的UNC路径加载.NET程序集。正如您已经发现的,最简单的解决方案是首先将模块复制到本地计算机。

要解决“拒绝访问”消息,请将模块复制到用户目录,而不是系统范围的目录。

c:\users\<username>\Documents\WindowsPowerShell\Modules

您需要以管理员身份运行PowerShell才能获得复制到系统文件夹的权限,但通常建议不要修改默认系统目录。而是将模块复制到用户文件夹(如上所述)。