programing

PowerShell을 사용하여 .reg 파일을 실행하는 방법은 무엇입니까?

iphone6s 2023. 8. 30. 21:26
반응형

PowerShell을 사용하여 .reg 파일을 실행하는 방법은 무엇입니까?

PowerShell 스크립트를 사용하여 .reg 파일(레지스트리 파일)을 실행하고 싶지만 실행할 수 없습니다.수동으로 실행하면 레지스트리에 각 노드가 생성되지만 powershell 스크립트를 사용하여 실행하기를 원합니다.아래는 제가 사용해봤지만 결과가 나오지 않은 코드입니다.

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

제가 시도한 또 다른 코드는 다음과 같습니다.

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

도와주세요...!

아래는 내 .reg 파일의 내용입니다.

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\\"

regedit.exe 대신 reg.exe를 사용하는 것은 어떻습니까?

Get-Command reg

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

이것은 나에게 잘 먹혔습니다.

reg import .\test.reg

사용합니다

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

마지막 부분

*>&1 | Out-Null

출력을 null로 연결하여 콘솔에서 볼 수 없도록 합니다.나는 이것이 필요하다고 생각하지 않지만 그것은 나를 짜증나게 했습니다.

권한이 부족하여 실행하려고 할 수 있습니다.이 스니펫은 작동해야 합니다.

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

if ($proc.ExitCode -eq 0) {
    'Success!'
}
else {
    "Fail! Exit code: $($Proc.ExitCode)"
}

Pause

다음을 사용할 수 있습니다.

Start-Process -filepath "$env:windir\regedit.exe" -Argumentlist @("/s", "`"C:\file.reg`"")

이것이 제가 사용하는 것입니다.

regedit /s "c:\file.reg"

언급URL : https://stackoverflow.com/questions/49676660/how-to-run-the-reg-file-using-powershell

반응형