Re: Fragen zu Innos Setup Handling?
Als Beispiel: Diese Funktion versucht beim Start den "SourcePath" von Windows zu ermitteln. Klappt das nicht, startet das Setup nicht.
[code=delphi]
Code:
Im Prinzip habe ich das auch nur mit den Angaben aus der Hilfedatei zusammengebaut.
function InitializeSetup: boolean;
var szSourcePath : string; begin Result := (RegQueryStringValue(HKEY_LOCAL_MACHINE,'Software\Microsoft\Windows\CurrentVersion\Setup', 'SourcePath',szSourcePath)) and (szSourcePath <> ''); if(Result) then MsgBox(szSourcePath,mbInformation,MB_OK); end; |
Re: Fragen zu Innos Setup Handling?
Mmmh, ich hab mir die Hilfe mal angesehen, kann dieser RegistryCheck vielleicht "function RegGetSubkeyNames" sein? Fallsja, wo gibts dazu Beispiele, vom Programmieren habe ich nämlich absolut keine Ahnung... :(
|
Re: Fragen zu Innos Setup Handling?
Ich glaube, dass du ein Verständnisproblem hast. Mag sein, dass das passiert wenn du (wie du selbst sagst) keine Ahnung vom Programmieren hast, aber wie sieht´s mit deinem Englisch aus? Kannst du dir unter dem Wort
Zitat:
Noch mal kurz: Du willst beim Start des Setup nach einem bestimmten Schlüssel/Wert in der Registry suchen. Einen Zitat:
Es gibt noch eine Funktion, "RegValueExists", die ich in meinem Beispiel nicht benutzt habe. Diese Funktion liest den Wert nicht aus sondern prüft nur ob er da ist. Ein Aufrufbeispiel wäre: [code=delphi]
Code:
Damit startet das Setup nur, wenn es den Eintrag "SourcePath" in "HKLM\...\Setup" gibt. Allerdings ist damit nicht sichergestellt, dass der Wert auch das enthält, was du erwartest. Dazu müsstest du ihn (wie im ersten Beispiel gezeigt) auslesen und ggf. mit einem Vorgabewert vergleichen.
function InitializeSetup: boolean;
var szSourcePath : string; begin Result := RegValueExists(HKEY_LOCAL_MACHINE, 'Software\Microsoft\Windows\CurrentVersion\Setup', 'SourcePath'); end; |
Re: Fragen zu Innos Setup Handling?
Bist du sicher, dass das stimmt, was du da schreibst? :/ Ich habe den kompletten Code, genauso wie du ihn geschrieben hast übernommen, aber er geht nicht. Der Pfad zur dem Reg-Schlüssel stimmt aber!! Ich habs auch mit anderen Sachen in "Software" probiert, geht trotzdem nicht. Richtig geschrieben habe ich aber alles.
Hier mein kompletter Code: [code=delphi][Setup] AppName=TPR Patch Pack Build 62 German Edition AppVerName=TPR Patch Pack Build 62 German Edition DefaultDirName=C:\Knights and Merchants InfoAfterFile=C:\Eigene Dateien\Patch Pack Quellcode\Docs DE\text.txt Compression=lzma SolidCompression=yes uninstallable=no [Languages] Name: "de"; MessagesFile: "compiler:Languages\German.isl" [Files] Source: "C:\Eigene Dateien\Patch Pack Quellcode\PP1 DE\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs [Run] Filename: "{app}\KM_TPR.exe"; Description: "Knights and Merchants jetzt starten"; Flags: nowait postinstall skipifsilent Filename: "{app}\Patch_Pack_Readme.htm"; Description: "Liesmich-Datei lesen (empfohlen)"; Flags: nowait postinstall skipifsilent
Code:
function InitializeSetup: boolean;
var szSourcePath : string; begin Result := (RegQueryStringValue(HKEY_LOCAL_MACHINE,'Software\JOYMANIA Entertainment\KnightsandMerchants TPR', 'SourcePath',szSourcePath)) and (szSourcePath <> ''); if(Result) then MsgBox(szSourcePath,mbInformation,MB_OK); end; |
Re: Fragen zu Innos Setup Handling?
Zitat:
Zitat:
Zitat:
|
Re: Fragen zu Innos Setup Handling?
Ach so, das rote musste ich ändern!!! Das musst du gleich sagen, das konnte ich ja nicht wissen… bin doch Anfänger, wie du weißt.
Aber super, jetzt klappt es. Bin sehr dankbar und mehr als zufrieden! :) |
Re: Fragen zu Innos Setup Handling?
Vergeßt es, Frage hat sich erledigt! Edit!
|
Re: Fragen zu Innos Setup Handling?
Uuh, jetzt hätte ich doch noch eine Frage! Ich habe ja einen Patch hier und man muß den Installationspfad angeben. Da der aber schon existiert, kommt eine Aufforderung, ob der Ordner überschrieben werden soll oder nicht. Wie kann ich diese Frage umgehen/automatisieren?
Ich hab in der Hilfe nach overwrite gesucht, dazu gibt’s aber nichts, was hinkommt oder (also für Flags:). Was muß man da schreiben? |
Re: Fragen zu Innos Setup Handling?
Ich habe meinen Installer erfolgreich benutzen können, habe aber festgestellt, das manche User zum dumm für die Bedienung sind. In dem Installationspfad soll daher ein ganz bestimmter Pfad stehen.
Inno soll also zur Regsitry connecten und dort aus einem bestimmten Eintrag einen Wert auslesen (das ist ein Pfad). Dieser Pfad (oder Variable...) soll dann den Wert der Variable bilden, die für den Installationspfad verwendet wird. Könnt ihr mir helfen? PS: Kann man mit Inno eigentlich auch solche Vollbild-Hintergründe machen, wie mit InstallShield? |
Re: Fragen zu Innos Setup Handling?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz