bginfo verteilen mit Registry Wert setzen (in Run)

Antworten
heinzer
Beiträge: 76
Registriert: 16 Nov 2011, 13:33

bginfo verteilen mit Registry Wert setzen (in Run)

Beitrag von heinzer »

Hallo,

ich würde gerne mittels folgendem Setup.ins das Programm BGinfo verteilen, inklusive Erstellen eines REG_SZ in "Run". Das Kopieren der Dateien klappt. Aber der Registry-Wert wird nicht gesetzt: Inhalt der Datei "Runreg.reg": (Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"bginfo"="C:\\temp\\bginfo.bat"
)



[Actions]
Message "Installation von BGinfo"
SetLogLevel=6

;Welche Windows-Version?
DefVar $MSVersion$

Set $MSVersion$ = GetMsVersionInfo
if CompareDotSeparatedNumbers($MSVersion$,">=","6")
sub_install_winnt6
else
stop "not a supported OS-Version"
endif


[sub_install_winnt6]
Files_copy_winnt6
Winbatch_add_reg /64Bit

[Files_copy_winnt6]
copy "%scriptpath%\*.*" "c:\temp\"

[Winbatch_add_reg]
registry loadUnicodeTextFile("%scriptpath%/regrun.reg") /regedit
"c:\windows\system32\regedit.exe" /s "%scriptpath%\regrun.reg"


Wie könnte dies funktionieren? Die Reg-Datei funktioniert, wenn ich sie "von Hand" aufrufe!

Vielen Dank und liebe Grüße
Stefan
heinzer
Beiträge: 76
Registriert: 16 Nov 2011, 13:33

Re: bginfo verteilen mit Registry Wert setzen (in Run)

Beitrag von heinzer »

damit gehts jetzt:


Registry_changes /AllNTUserdats /64bit

[sub_install_winnt6]
Files_copy_winnt6


[Files_copy_winnt6]
copy "%scriptpath%\*.*" "c:\temp\"

[Registry_changes]
OpenKey [Software\Microsoft\Windows\CurrentVersion\Run]
Set "bginfo" = "C:\temp\bginfo.bat"
Benutzeravatar
SisterOfMercy
Beiträge: 1524
Registriert: 22 Jun 2012, 19:18

Re: bginfo verteilen mit Registry Wert setzen (in Run)

Beitrag von SisterOfMercy »

heinzer hat geschrieben: 28 Jul 2023, 20:45
Registry_changes /AllNTUserdats /64bit

[sub_install_winnt6]
Files_copy_winnt6

[Files_copy_winnt6]
copy "%scriptpath%\*.*" "c:\temp\"

[Registry_changes]
OpenKey [Software\Microsoft\Windows\CurrentVersion\Run]
Set "bginfo" = "C:\temp\bginfo.bat"
/AllNTUserdats is for HKCU, this does not have a seperate 64 bit section, so the /64Bit parameter is not needed.

I think your script can use some improvement. No need to use a sub. You can use parameters in the autorun registry entry. When also using an uninstall script you might want to move to using more variables, for instance $InstallDir$.

Code: Alles auswählen

encoding=utf8

[Actions]
Message "Installation von BGinfo"
SetLogLevel=6

;Welche Windows-Version?
DefVar $MSVersion$

Set $MSVersion$ = GetMsVersionInfo
if CompareDotSeparatedNumbers($MSVersion$, "<", "6")
	LogError "not a supported OS-Version"
	isFatalError
endif

Files_copy_winnt6
Registry_install /SysNative

[Files_copy_winnt6]
copy "%scriptpath%\*.*" "c:\temp"

[Registry_install]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
set "bginfo" = '"C:\temp\Bginfo.exe" /accepteula /popup'
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!
Antworten