我面临一个与补丁安装后自动加载模块相关的问题。顺序如下:
- 我有一个运行在版本 1.0.8802 中的 .NET 服务
- 从 Powershell (V 4.0) 我看到模块
MyAgent
已加载并且它的命令行开关是可访问的 - 即使在我重新启动计算机后,
MyAgent
当我打开 Powershell 时也会加载(无需显式执行任何加载/获取模块命令) - 现在我使用 WUA(Windows 更新代理)为我的 .NET 服务安装补丁。补丁安装成功并自动重启电脑
- 现在我打开 PowerShell,
MyAgent
没有加载。它出现在Get-Module -ListAvailable
. 一旦我跑步Import-Module MyAgent
,一切都会像以前一样开始工作。
注意事项:
- MyAgent 模块
c:\windows\system32\Windowspowershell\v1.0\modules
在这两种情况下都存在 - 在这两种情况下
$PSModuleAutoloadingPreference
都是 null - 我
$env:PSModulePath
的指向也是正确的c:\windows\system32\Windowspowershell\v1.0\modules\
我感到困惑的原因是,为什么补丁安装后模块没有自动加载(尽管模块存在于正确的模块文件夹中)?当我在C:\Users\<<user>>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
其中创建内容为Import-Module MyAgent
. 具有讽刺意味的是,如果我将配置文件保存在C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
补丁安装本身会失败而没有任何明显的错误。我在这里想念什么?
请帮忙!