Powershell将注册表转换为XML以进行GPO分配

时间:2018-03-26 21:49:39

标签: xml windows powershell registry gpo

要让任务栏固定通过域上的GPO定制的应用程序,我必须具有注册表导出的XML版本。 (没有Windows 10任务栏固定应用程序设置,因此必须通过reg设置完成)

我已经查找了注册表到XML转换器,以便我可以为我的GPO创建一个XML文件,但是我还没有找到一个正常运行的文件。

是否有人有一个功能正常的powersheel脚本的链接,或者可以识别这些错误?

此页面中的脚本: https://4sysops.com/archives/convert-reg-to-xml-to-import-registry-key-into-group-policy-preferences/

https://4sysops.com/wp-content/uploads/2014/09/RegToXML.zip

给我这个错误:

New-Object : Exception calling ".ctor" with "1" argument(s): "Could not find file 'C:\WINDOWS\system32\test1.reg'."
At C:\RegToXML.ps1:43 char:7
+   $sr=New-Object System.IO.StreamReader($regPath)
+       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [New-Object], MethodInvocationException
    + FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand
You cannot call a method on a null-valued expression.
At C:\RegToXML.ps1:53 char:5
+     $line = $sr.ReadLine()
+     ~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

此处的脚本: https://gallery.technet.microsoft.com/scriptcenter/Registry-To-GroupPolicyPref-9feae9a3

导致此错误:

C:\Convert-RegToGppXml.ps1 : Cannot process argument transformation on parameter 'SourcePath'. Cannot convert the
".\test1.reg" value of type "System.String" to type "System.Management.Automation.ValidateNotNullOrEmptyAttribute".
At line:1 char:39
+ .\Convert-RegToGppXml.ps1 -SourcePath .\test1.reg -ResultPath .\test1 ...
+                                       ~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Convert-RegToGppXml.ps1], ParameterBindingArgumentTransformationExcept
   ion
    + FullyQualifiedErrorId : ParameterArgumentTransformationError,Convert-RegToGppXml.ps1

1 个答案:

答案 0 :(得分:1)

如果您使用MS-Gallery中的该脚本(Convert-RegToGppXml.ps1),则应使用完整的Sourcepath(例如C:\ users \ xyz \ script.reg)。不要在路径中使用引号!