gpt4 book ai didi

xml - PowerShell给出错误 “Object reference not set to an instance object”

转载 作者:行者123 更新时间:2023-12-03 00:06:30 25 4
gpt4 key购买 nike

每当我的Powershell脚本运行时,都会收到错误消息。但是,它确实运行成功。我想知道是什么导致错误消息。谢谢!

电源 shell :

 [xml]$file = get-content "c:\Windows\personalsettings\PersonalSettings.xml"
$xmlProperties = $file.SelectNodes("/Objects/Object/Property")
If ($xmlProperties.Where({ $_.InnerText -eq 'FireFox' }, 'First'))
{
Invoke-expression "C:\Windows\SetDefaultBrowser\setdefaultbrowser"
}
If ($xmlProperties.Where({ $_.InnerText -eq 'Chrome' }, 'First'))
{
Invoke-expression "C:\Windows\psu\protected\SetDefaultBrowser\setdefaultbrowser"
}

XML文件:
<?xml version="1.0"?>
<Objects>
<Object>
<Property Name="Browser">Firefox</Property>
<Property Name="PDF">Adobe Reader</Property>
</Object>
</Objects>

最佳答案

xml文件用命名空间<?xml version="1.0"?>声明,这就是为什么它不选择节点。最好像普通对象那样获取值:

$file = [xml](Get-Content "c:\Windows\personalsettings\PersonalSettings.xml")
$file.objects.object.property | ForEach {
If ($_.Innertext -eq "Firefox") {
Invoke-expression "C:\Windows\SetDefaultBrowser\setdefaultbrowser"
}
If ($_.Innertext -eq "Chrome") {
Invoke-expression "C:\Windows\psu\protected\SetDefaultBrowser\setdefaultbrowser"
}
}

关于xml - PowerShell给出错误 “Object reference not set to an instance object”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60454454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com