kaheiho
Goto Top

Inno Setup - Pascal-Problem: Prüfe, ob 32 bzw. 64bit und schreibe nach der Installation in die Registry

Hallo liebe Leute,
leider bin ich -trotz einiger Recherchen in Netz - am Ende meiner (nicht vorhandenen Pascal-Kenntnisse) angelangt:
in der folgenden Prozedur bekomme ich beim Kompilieren immer den Fehler "Type mismatch" - was mache ich falsch?

Code Start----------------------
Schreibt NACH INSTALLATION in die Registry, um die Meldung
"Silverfast ist auf diesem System nicht installiert"
zu unterdrücken.
Wenn 32bit-System:
Schlüssel: HKEY_LOCAL_MACHINE\SOFTWARE\Film Scanner\A28\USB\ScanCenter
Name : DETECT_SILVERFAST
Wert : 0 statt 1

Wenn 64bit-System:
Schlüssel: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Film Scanner\A28\USB\ScanCenter
Name : DETECT_SILVERFAST
Wert : 0 statt 1
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssPostInstall then begin
if (IsWin64) then
begin
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Wow6432Node\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
RegWriteStringValue(HKEY_CURRENT_USER, 'Software\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
RegWriteStringValue(HKEY_USERS, 'S-1-5-19\Software\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
end
else
begin
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
RegWriteStringValue(HKEY_CURRENT_USER, 'Software\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
RegWriteStringValue(HKEY_USERS, 'S-1-5-19\Software\Film Scanner\A28\USB\ScanCenter', 'DETECT_SILVERFAST', 0)
end
end
end;
Code Ende---------------------

Hoffe jemand weiß weiter und kann mir helfen.

Vielen Dank im Voraus
kaheiho

Content-ID: 245347

Url: https://administrator.de/forum/inno-setup-pascal-problem-pruefe-ob-32-bzw-64bit-und-schreibe-nach-der-installation-in-die-registry-245347.html

Ausgedruckt am: 22.12.2024 um 21:12 Uhr

kaheiho
kaheiho 01.08.2014 um 18:18:56 Uhr
Goto Top
Bitte um Entschuldigung, hab' den Wald vor lauter Bäumen nicht gesehen:
es muß natürlich heißen "RegWriteDWordValue" statt "RegWriteStringValue" !!!