wake-up-neo.net

Wie führt man die .reg-Datei mit PowerShell aus?

Ich möchte die .reg-Datei (Registrierungsdatei) mit PowerShell Script ausführen, kann sie jedoch nicht ausführen. Wenn ich es manuell ausführe, werden die entsprechenden Knoten in der Registrierung erstellt, aber ich möchte, dass es mit Powershell-Skript ausgeführt wird .. __ Unten ist der Code, den ich verwendet habe, aber ich habe keine Ergebnisse erhalten

$PathofRegFile="c:\file.reg"
regedit /s $PathofRegFile

Ein anderer Code, den ich ausprobierte, war dieser -

Start-Process -filepath "C:\windows\regedit.exe" -argumentlist "/s c:\file.reg"

Bitte helfen Sie ..!

Unten ist der Inhalt meiner .reg-Datei 

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI]

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP]
@=""

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform]
"VERSION"="8.2.6.0"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\AppService]
"MONITORINTERVAL"=dword:00000005
"MONITORAPPS"="STEP Audit"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\Audit]
"TRACEON"=dword:00000000
"TRACEDIR"="Specifies the directory to dump trace files if TRACEON is set to 1"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\Common]
"SSMITRACEFILEX"="C:\\Program Files\\SePI\\STEP\\LogFiles\\SSMITraceFile.txt"
"SSMILOGERRORSLOCALLY"="Yes"
"SSMIDoNotSendToAudit"="FALSE"
"ResourceFile"="C:\\Program Files\\SePI\\STEP\\Programs\\"
"REPORTALLEXCEPTIONS"="Yes"
"KSPath"="C:\\Program Files\\SePI\\STEP\\KeyStore\\"
"KEY"="10069356713705F858B56A9E850DD8CB7D"
"intelliSUITEnode"="WebApp"
"InstallationDir"="C:\\Program Files\\SePI\\STEP\\"
"IMSFirstRun"=dword:00000001
"CONFIGPATH"="C:\\Program Files\\SePI\\STEP\\Configuration Files\\"
"COM_VERBOSEGLOBALCACHE"="False"
"COM_UserProfileCacheExpirationInSecs"="30"
"COM_SSMISenderUtilCacheExpirationInSecs"="120"
"COM_REPORTIGNOREDEXCEPTIONSASWARNINGS"="True"
"COM_LOCALUTILSCACHEEXPIRATIONINSECS"="600"
"COM_DEFAULTPROPERTYCACHEEXPIRATIONINSECS"="600"
"ProductName"="Ron"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\ESI]

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\ESI\ITranQueryPrep]
"PATH"="C:\\Program Files\\SePI\\STEP\\QueryTemplates"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\ITran]
"MAXROWSTORETURN"=dword:000003e8
"WRITERPSWD"="PASSWORD"
"WRITER"="ITRAN_WRITER"
"SERVER"="SQL SERVER"
"READERPSWD"="PASSWORD"
"READER"="ITRAN_READER"
"DBNAME"="DATABASENAME"

[HKEY_LOCAL_MACHINE\SOFTWARE\SePI\STEP\Platform\ReportingSvc]
"STATUSINTERVAL"="5"
"POLLINTERVAL"="2"
"MONITORINTERVAL"="5"
"MAXWORKERTHREADS"="5"
"CONFIGFILE"="C:\\Program Files\\SePI\\STEP\\Configuration Files\\"
1
SRP

Wie wäre es mit reg.exe anstelle von regedit.exe

Get-Command reg

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Application     reg.exe                                            10.0.16... C:\Windows\system32\reg.exe

das funktionierte für mich gut:

reg import .\test.reg
2
Aurimas N.

Möglicherweise versuchen Sie, es mit unzureichenden Berechtigungen auszuführen. Dieses Snippet sollte funktionieren:

$StartParams = @{
    FilePath = "$Env:SystemRoot\REGEDIT.exe"
    ArgumentList = '/s','C:\file.reg'
    Verb = 'RunAs'
    PassThru = $True
    Wait = $True
}
$Proc = Start-Process @StartParams

If ($Proc.ExitCode -eq 0) { Write-Host 'Success!' }
Else { Write-Host "Fail! Exit code: $($Proc.ExitCode)" }

Pause
2

Ich benutze 

Invoke-Command {reg import \\server\share\test.reg *>&1 | Out-Null}

der letzte Teil

*>&1 | Out-Null

leitet die Ausgabe auf null, damit die Konsole sie nicht sieht. Ich denke nicht, dass dies erforderlich ist, aber es ärgert mich.

1
Drake