![]() |
Inno Setup - Problem mit Mehrfachinstallaton...
Wenn ich mein Programm zuerst deutsch, und dann englisch drüber installiere, habe ich 2 Einträge unter "Software" :?
Wie kann man das verhidern? |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
hi,
für solche Sachen gibt es die Registry. Du könntest die Versionsnummer in einen Schlüssel deiner Wahl schreiben lassen und beim Start deiner Installation diesen auf Gültigkeit überprüfen. Oder du liest die Versionnummer direkt aus deinem Programm aus. |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Das Problem ist allerdings, dass ein drüber installieren schon möglich sein soll, aber eben ohne den 2. Eintrag unter "software", den es allerdings gibt, wenn man das Setup in einer anderen Sprache erneut laufen lässt :roll:
Ich hätte allerdings angenommen, dass Innosetup so etwas selbstständig regelt... :gruebel: |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Dann liegt es wohl daran, das dein Setup 2 unterschiedliche Schlüssel in der Registry ablegt.
Etwas Code wäre nicht schlecht. |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Zitat:
Das einzige was anders ist, ist dass der Name des Programmes auf english naturgemäß vom deutschn namen abweicht und genau diese beiden Namen hab ich bei einer Doppelinstallation deutsch/englisch unter "Software" stehen :| |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Wie sieht denn der Schlüssel aus?
Exportiere ihn und häng ihn hier mal an. Zitat:
|
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Installation deutsch:
Code:
Installation english:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Delphi7-Hilfe (für Delphi2005)_is1] "Inno Setup: Setup Version"="5.1.4" "Inno Setup: App Path"="C:\\Programme\\Del7Help" "InstallLocation"="C:\\Programme\\Del7Help\\" "Inno Setup: Icon Group"="Delphi7-Hilfe (für Delphi2005)" "Inno Setup: User"="Michael" "Inno Setup: Selected Tasks"="google,delphipraxis,delphi_forum,favicons,favicons\\auto" "Inno Setup: Deselected Tasks"="favicons\\onetime" "DisplayName"="Delphi7-Hilfe (für Delphi2005)" "DisplayIcon"="C:\\Programme\\Del7Help\\Del7Help.dll" "UninstallString"="\"C:\\Programme\\Del7Help\\unins000.exe\"" "QuietUninstallString"="\"C:\\Programme\\Del7Help\\unins000.exe\" /SILENT" "DisplayVersion"="1" "Publisher"="FriFra Informatik eK" "URLInfoAbout"="http://www.frifra.de/" "NoModify"=dword:00000001 "NoRepair"=dword:00000001
Code:
Und hier ist noch mein IS-script:[code=delphi][Setup]
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Delphi7-Help (for Delphi2005)_is1] "Inno Setup: Setup Version"="5.1.4" "Inno Setup: App Path"="C:\\Programme\\Del7Help" "InstallLocation"="C:\\Programme\\Del7Help\\" "Inno Setup: Icon Group"="Delphi7-Help (for Delphi2005)" "Inno Setup: User"="Michael" "Inno Setup: Selected Tasks"="google,delphipraxis,delphi_forum,favicons,favicons\\auto" "Inno Setup: Deselected Tasks"="favicons\\onetime" "DisplayName"="Delphi7-Help (for Delphi2005)" "DisplayIcon"="C:\\Programme\\Del7Help\\Del7Help.dll" "UninstallString"="\"C:\\Programme\\Del7Help\\unins001.exe\"" "QuietUninstallString"="\"C:\\Programme\\Del7Help\\unins001.exe\" /SILENT" "DisplayVersion"="1" "Publisher"="FriFra Informatik eK" "URLInfoAbout"="http://www.frifra.de/" "NoModify"=dword:00000001 "NoRepair"=dword:00000001 AppPublisher=FriFra Informatik eK AppPublisherURL=http://www.frifra.de/ AppVersion=1 VersionInfoVersion=1.1.0.0 AppName={cm:AppTitle} AppVerName={cm:AppTitle} DefaultDirName={pf}\Del7Help DefaultGroupName={cm:AppTitle} UninstallDisplayIcon={app}\Del7Help.dll Compression=lzma/max SolidCompression=yes WizardImageFile=compiler:WizModernImage-IS.bmp WizardSmallImageFile=compiler:WizModernSmallImage-IS.bmp SetupIconFile=..\ico\Setup.ico AppMutex=Del7Help OutputBaseFilename=Del7Help [Languages] Name: en; MessagesFile: "compiler:Default.isl";LicenseFile:lizenz_en.r tf Name: de; MessagesFile: "compiler:Languages\German.isl";LicenseFile:lizenz _de.rtf [Messages] en.BeveledLabel=English de.BeveledLabel=Deutsch [CustomMessages] de.AppTitle=Delphi7-Hilfe (für Delphi2005) en.AppTitle=Delphi7-Help (for Delphi2005) de.RemoveApp=Delphi7-Hilfe (für Delphi2005) entfernen en.RemoveApp=remove Delphi7-Help (for Delphi2005) de.HomePageLink=Homepage besuchen en.HomePageLink=visit homepage de.NoDelphi9=Delphi 2005 wurde nicht gefunden! en.NoDelphi9=Delphi 2005 not found! de.Google=Google einfügen en.Google=insert Google de.DelphiPraxis=DelphiPraxis einfügen en.DelphiPraxis=insert DelphiPraxis de.Delphi_Forum=Delphi-Forum einfügen en.Delphi_Forum=insert Delphi-Forum de.LoadFaviconsGroup=Symbole der verlinkten Webseiten en.LoadFaviconsGroup=Icons from linked websites de.LoadFavicons=Aus dem Internet laden en.LoadFavicons=Load from the internet de.Autoupdate=wöchentlich updaten en.Autoupdate=update weekly de.Load=nur einmalig laden en.Load=only load once [Files] Source: "..\Del7Help.dll"; DestDir: "{app}"; Flags: ignoreversion Source: "lizenz_de.txt"; DestDir: "{app}";DestName: "lizenz.txt"; Languages: de Source: "lizenz_en.txt"; DestDir: "{app}";DestName: "license.txt"; Languages: en [Dirs] Name: "{commonappdata}\FriFra\Del7Help" [Tasks] Name: google; Description: "{cm:Google}"; Name: delphipraxis; Description: "{cm:DelphiPraxis}"; Name: delphi_forum; Description: "{cm:Delphi_Forum}"; Name: favicons; Description: "{cm:LoadFavicons}";GroupDescription:"{cm:LoadFavi consGroup}"; Name: favicons\auto; Description: "{cm:Autoupdate}";GroupDescription:"{cm:LoadFavico nsGroup}";Flags: exclusive; Name: favicons\onetime; Description: "{cm:Load}";GroupDescription:"{cm:LoadFaviconsGrou p}";Flags: exclusive unchecked; [Registry] Root: HKCU; Subkey: "Software\Borland\BDS\3.0\Experts"; ValueType: STRING; ValueName: "Del7Help"; ValueData: "{app}\Del7Help.dll"; Flags: uninsdeletevalue [INI] Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Del7Help"; Key: "LoadFavicon"; String: "0";Tasks:not favicons Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Del7Help"; Key: "LoadFavicon"; String: "1";Tasks:favicons and favicons\auto Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Del7Help"; Key: "LoadFavicon"; String: "2";Tasks:favicons and favicons\onetime Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Help"; Key: "FileName"; String: "~" Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Google"; Key: "Active"; String: "1";Tasks:google Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Google"; Key: "Active"; String: "0";Tasks:not google Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "DelphiPraxis"; Key: "Active"; String: "1";Tasks:delphipraxis Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "DelphiPraxis"; Key: "Active"; String: "0";Tasks:not delphipraxis Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Delphi-Forum"; Key: "Active"; String: "1";Tasks:delphi_forum Filename: "{commonappdata}\FriFra\Del7Help\Del7Help.ini" ; Section: "Delphi-Forum"; Key: "Active"; String: "0";Tasks:not delphi_forum [UninstallDelete] Type: filesandordirs; Name: "{app}" Type: filesandordirs; Name: "{commonappdata}\FriFra\Del7Help"
Code:
const
COLOR_HIGHLIGHT = 13; const szUrl = 'http://www.frifra.de'; function GetSysColor(nIndex: integer): cardinal; external 'GetSysColor@user32.dll stdcall'; procedure UrlLabelClick(Sender: TObject); var ErrorCode: Integer; begin ShellExec('open', szUrl, '', '', SW_SHOW, ewNoWait, ErrorCode); end; procedure InitializeWizard; var CancelBtn: TButton; UrlLabel: TNewStaticText; begin CancelBtn := WizardForm.CancelButton; UrlLabel := TNewStaticText.Create(WizardForm); UrlLabel.Top := CancelBtn.Top + (CancelBtn.Height div 2) - (UrlLabel.Height div 2); UrlLabel.Left := WizardForm.ClientWidth - CancelBtn.Left - CancelBtn.Width; UrlLabel.Caption := ExpandConstant('{cm:HomePageLink}'); UrlLabel.Font.Style := UrlLabel.Font.Style + [fsUnderline]; UrlLabel.Cursor := crHand; UrlLabel.Font.Color := GetSysColor(COLOR_HIGHLIGHT); UrlLabel.OnClick := @UrlLabelClick; UrlLabel.Parent := WizardForm; end; function InitializeSetup: boolean; begin Result := RegKeyExists(HKEY_CURRENT_USER, 'Software\Borland\BDS\3.0'); if(not Result) then MsgBox(ExpandConstant('{cm:NoDelphi9}'), mbCriticalError, MB_OK); end; end. |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
hi,
es sind 2 unterschiedliche Schlüssel, deshalb auch 2 Einträge. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Uninstall\Delphi7-Help (for Delphi2005)_is1] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Uninstall\Delphi7-Hilfe (für Delphi2005)_is1] |
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Und wie bringe ich InnoSetup nun dazu alles unter dem selben Schlussel abzulegen?
|
Re: Inno Setup - Problem mit Mehrfachinstallaton...
Indem du "AppId" verwendest und am besten mit einer GUID belegst!
Steht auch so in irgendeiner Inno Setup-Doku, von der ich mal gehört habe. :stupid: Ernsthaft: Benutzt du "AppId" nicht (s. Inno-Hilfe), dann verwendet das Programm "AppName" bzw "AppVerName". Und wenn die bei zwei verschiedenen Sprachen auch unterschiedlich sind, ... nun ja ... das Ergebnis siehst du in deiner Systemsteuerung/Software. :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz