我目前的环境是使用PowerShell V5的Windows 7企业版(SP1)
PSVersion = 5.0.10586.117
以某种方式,当我尝试运行以下语句时(之前它运作良好)
new-object System.Net.WebClient
我开始收到以下错误
我检查了
$ExecutionContext.SessionState.LanguageMode
,结果是: ConstrainedLanguage
我现在对如何将这种LanguageMode改为" FullLanguage"而感到茫然。如URL
中所述我用Google搜索并且没有看到任何与我的环境有关的内容,我在MS technet论坛中看到的最近的链接是here。但在我的情况下,我认为它不启用AppLocker(或者我是否必须要求我的网络管理员检查组策略?)并且我在本地计算机上也没有看到任何SRP(软件限制策略)。
有人可以告诉我如何解决此问题或如何检查导致此LanguageMode更改的各个方面?或者有没有办法可以编辑LangugageMode值? 在此先感谢您的帮助。
答案 0 :(得分:0)
好的,经过多次尝试,我终于找到了原因。我大约10天前将WMF 5.0生产预览更新到WMF 5.0 Production RTM,但从那以后,我没有运行任何脚本,包括
new-object System.Net.WebClient
因此,我从未遇到过提到的错误。
在我卸载此WMF 5.0 Prod RTM版本后,我现在处于PS版本4中。
PSVersion = 4.0
当我跑
时$ExecutionContext.SessionState.LanguageMode
我得到“FullLanguage”值,如下所示
所以我认为这是WMF 5.0到Windows 7.0的一个错误,MS应该修复它。
我用Win 10 OS和WMF 5.0 RTM检查了我的电脑,语言模式仍然是“FullLanguage”。
[编辑]:2016.Nov.25
我想我需要更新这个答案,因为发现错误并且我降级到V4,它解决了问题,但可能在两周之后,我重新安装了WMF 5.0(我相信下载的文件与我的初始下载文件不同,因为下载链接不同),现在这也解决了问题,即在PS V5.0中,错误不再出现。这是我当前的环境
答案 1 :(得分:0)
要更改语言模式,您可以使用变量:
$ExecutionContext.SessionState.LanguageMode = "FullLanguage"