我正在尝试部署从测试机器导出的自定义注册表项。如下所示。我遇到了这在另一个网站上也有类似的请求,但我无法让它发挥作用。
“TextFontSimple” =十六进制:3c,00,00,00,1f,00,00,f8,00,00,00,40,dc,00,00,00,00,00,00,\ 00,00,00,00,ff,00,31,43,6f,75,72,69,65,72,20,4e,65,77,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
按照其他解决方案,下面的 PS 命令会引发错误。“找不到与参数名称匹配的参数”
设置项目属性-路径“HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\MailSettings”-名称“TextFontSimple”-属性类型二进制-值([byte[]](0x3c,0x00,0x00,0x00,0x1f....0x00))
有任何想法吗?
====编辑=====
键和值已经存在。当我使用Get-ItemProperty
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\MailSettings
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common
PSChildName : MailSettings
PSProvider : Microsoft.PowerShell.Core\Registry
TextFontSimple : {60, 0, 0, 0...}
答案1
要弄清楚直接注册表设置方法出了什么问题,您需要提供有关您尝试的操作和出了什么问题的更多信息。
对于 powershell 方法,你似乎感到困惑New-ItemProperty
和Set-ItemProperty
。创建新值时,您可以设置类型。修改现有值时,您不能;所有修改 Windows 注册表的方法都是如此,这就是您的-PropertyType
参数导致命令出错的原因。
如果值已经存在,但未正确设置:
Set-ItemProperty -path HKCU:\Software\Microsoft\Office\14.0\Common\MailSettings -name TextFontSimple -value ([byte[]] (0x3c,0x68,0x74,0x6d....0x00))
如果不存在:
New-ItemProperty -path HKCU:\Software\Microsoft\Office\14.0\Common\MailSettings -name TextFontSimple -propertytype Binary -value ([byte[]] (0x3c,0x68,0x74,0x6d....0x00))
答案2
您尝试设置的键很可能尚不存在。请尝试使用 new-itemproperty 而不是 set-itemproperty