AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Innosetup: Programm 2mal installieren, 2 Verknüpfungen
Thema durchsuchen
Ansicht
Themen-Optionen

Innosetup: Programm 2mal installieren, 2 Verknüpfungen

Ein Thema von hoika · begonnen am 13. Jul 2010 · letzter Beitrag vom 13. Jul 2010
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#1

Innosetup: Programm 2mal installieren, 2 Verknüpfungen

  Alt 13. Jul 2010, 11:57
Hallo,

ich muss ein Programm 2mal (in 2 verschiedene Pfade) installieren.
Auf dem Desktop sollen dann 2 Verknüpfungen angelegt werden.
Wenn möglich, sollte der Name der Verknüpfung auch einstellbar sein.

Weiss jemand einen Tip ?

Danke


Heiko
Heiko

Geändert von hoika (13. Jul 2010 um 14:18 Uhr)
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Innosetup: Programm 2mal installieren, 2 Verknüpfungen

  Alt 13. Jul 2010, 12:09
Moin,

sollen das zwei individuelle Installations-Vorgänge werden oder soll es so sein, dass ein Installations-Vorgang zwei Kopien der Anwendung auf dem PC ablegt?
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#3

AW: Innosetup: Programm 2mal installieren, 2 Verknüpfungen

  Alt 13. Jul 2010, 12:17
Du kannst in InnoSetup in der Gruppe [Icons] so viele Desktop-Verknüpfungen anlegen wie du willst.

Ein zweites Installations-Verzeichnis kannst du vom User z.B. über die Funktion CreateInputDirPage() auswählen lassen.
Allerdings musst du dann das Kopieren der Dateien in dieses Verzeichnis selbst über Pascal Script schreiben, da das Inno Setup nicht automatisch macht und keine {app}-Konstante dafür verfügbar ist.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Innosetup: Programm 2mal installieren, 2 Verknüpfungen

  Alt 13. Jul 2010, 13:36
Hallo,

Zitat:
sollen das zwei individuelle Installations-Vorgänge
Genauso. Es könnten auch mehr sein.
Die manuelle Auswahl des Ziel-Verzeichnisses war ja auch kein Problem.

Der Rechner kann von 2 Nutzern verwendet werden.
Jeder bekommt eine eigene Programm-Version in ein eigenes Verzeichnis.

Ich soll nur das Setup-Programm schreiben,
also bitte keine Sprüche wie "special folders benutzen".


Heiko
Heiko

Geändert von hoika (13. Jul 2010 um 13:39 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Innosetup: Programm 2mal installieren, 2 Verknüpfungen

  Alt 13. Jul 2010, 15:01
Das wäre eine Möglichkeit:
Delphi-Quellcode:
#define MyAppName "Inno User Setup"
#define MyAppVersion "1.0.0"
#define MyAppPublisher "ich"
#define MyAppExeName "Test.exe"
#define MyAppContact "ich"
#define MyAppCopyright "2010"
#define MyAppComments "Nur ein Test"
#define MyAppID "C5F1D397-9695-9999-8B4E-3D9A5EE25619"
#define MyAppMutex "InnoSetupTest"

#include AddBackslash(CompilerPath) + "Lib\Uninstall.iss"

[Setup]
AppName={#MyAppName}
AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
DefaultDirName={userappdata}\{#MyAppPublisher}\{#MyAppName}
DisableDirPage=true
DefaultGroupName={#MyAppPublisher}\{#MyAppName}
DisableProgramGroupPage=true
OutputDir=Setup
OutputBaseFilename={#MyAppPublisher} {#MyAppName} {#MyAppVersion} InnoSetup
Compression=lzma/ultra64
SolidCompression=true
VersionInfoVersion={#MyAppVersion}
VersionInfoCompany={#MyAppPublisher}
VersionInfoCopyright=©{#MyAppCopyright}
AppVersion={#MyAppVersion}
;{code:GetFileVersion|{#MyAppExeName}}
UsePreviousLanguage=no
AppID={{{#MyAppID}-{code:GetUserName|}}
AppContact={#MyAppContact}
UninstallDisplayIcon={app}\{#MyAppExeName}
UninstallDisplayName={#MyAppPublisher} {#MyAppName} {#MyAppVersion} {code:GetUserName|}
WindowVisible=false
BackColor=$8cffff
AppCopyright=©{#MyAppCopyright}
AppComments={#MyAppComments}
InternalCompressLevel=ultra64
VersionInfoDescription={#MyAppComments}
AppMutex={#MyAppMutex}_{code:GetUserName|}

[Languages]
Name: german; MessagesFile: compiler:Languages\German.isl

[Files]
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
Source: *.txt; DestDir: {app}

[Icons]
Name: {userdesktop}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; WorkingDir: {app}

[Code]
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssInstall then
   UninstallOldVersion(
'{{#MyAppID}-' + GetUserNameString + '}', true, true );
end;

function GetUserName( bla : string ) : string;
begin
RESULT := GetUserNameString;
end;

function GetFileVersion( Filename : string ): String;
begin
if not GetVersionNumbersString( Filename, RESULT ) then
RESULT :=
'';
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:05 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