Powershell 什么';new itemproperty和set itemproperty之间的区别是什么?

Powershell 什么';new itemproperty和set itemproperty之间的区别是什么?,powershell,Powershell,两者似乎都可以创建或更改项目属性 这两者有什么区别?在什么情况下,它们的性能会有所不同?对我来说,不同之处在于,如果对存在的项属性使用new,则会收到错误,在所有情况下都可以使用set-ItemProperty 所以“新建”用于创建,“设置”用于修改或创建。如果属性存在,则不会创建New。除了@JPBlanc提到的内容之外,还有另一个重要的区别。请注意,只有New ItemProperty具有参数-PropertyType,该参数可用于指定注册表值类型(如REG\U DWORD等)。我刚刚在HK

两者似乎都可以创建或更改项目属性


这两者有什么区别?在什么情况下,它们的性能会有所不同?

对我来说,不同之处在于,如果对存在的项属性使用new,则会收到错误,在所有情况下都可以使用set-ItemProperty


所以“新建”用于创建,“设置”用于修改或创建。如果属性存在,则不会创建New。

除了@JPBlanc提到的内容之外,还有另一个重要的区别。请注意,只有New ItemProperty具有参数
-PropertyType
,该参数可用于指定注册表值类型(如REG\U DWORD等)。

我刚刚在HKLM:\software\test中尝试过。“gp.”不显示任何itemproperties。“set itemproperty.MyProperty MyValue-type string”创建一个属性,现在显示为“gp”。“new itemproperty”的作用与此相同,但在MyValue之前需要一个“-value”开关。然后我尝试了“set-itemproperty.My2 4-type dword”,并使用regedit进行了检查。我有一个名为“My2”的值,其内容为4,类型为dword。请记住,您不能对已存在的属性使用new itemProperty。我注意到您编辑了答案。现在它是正确的,并且被接受了。Ta.
Set-ItemProperty
cmdlet具有
-Type
参数,可用于更改注册表值的类型。