AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Kennt jemand InnoSetup ?

Ein Thema von Hansa · begonnen am 15. Mär 2004 · letzter Beitrag vom 19. Mär 2004
Antwort Antwort
Seite 2 von 3     12 3      
moritz

Registriert seit: 18. Apr 2003
1.037 Beiträge
 
#11

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:33
Hallo

Wenn du willst kann ich dir den InnoScript vom BirthdayRemember schicken, der enthält recht viel (Auch Pascalcode).

Gruß
"Optimistisch ist diejenige Weltanschauung, die das Sein höher als das Nichts stellt und so die Welt und das Leben als etwas an sich Wertvolles bejaht."
Albert Schweitzer
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#12

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:39
@Onz: dann mache das mal. Wäre echt nett. Was hat das überhaupt mit dem Pascal - Code zu tun ? Müßte ich schon wissen.

Und Luckie, der Link ist gut. Das lese ich mir nachher noch durch, Drucker druckt schon. 8)

Wise lasse ich vorerst mal doch aussen vor. Zuerst muß ich mir mal das Simmack'sche durchlesen.
Gruß
Hansa
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#13

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:42
Zitat von Hansa:
@Onz: dann mache das mal. Wäre echt nett. Was hat das überhaupt mit dem Pascal - Code zu tun ? Müßte ich schon wissen.
In der aktuellen Version von Inno Setup kannst du eigenen Code schreiben. Der orientiert sich an Delphi und ist eigentlich relativ umfangreich.

Allerdings enthält meine IS-Doku nicht ein Wort dazu. Mein Angebot steht noch: Wer Erfahrung damit hat, darf gern die entsprechenden Kapitel machen, und sein/ihr Name kommt dann mit ins Copyright.
  Mit Zitat antworten Zitat
moritz

Registriert seit: 18. Apr 2003
1.037 Beiträge
 
#14

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:44
Nimm das!

Zitat:
[Setup]
AppName=BirthdayRemember
AppVerName=BirthdayRemember 6.0.3
AppPublisher=Ich
AppPublisherURL=http://www.BirthdayRemember.de
AppSupportURL=http://www.BirthdayRemember.de
AppUpdatesURL=http://www.BirthdayRemember.de
DefaultDirName={pf}\BirthdayRemember
DefaultGroupName=BirthdayRemember
InfoBeforeFile=Hinweis.rtf
WizardImageFile=WizardImageFile.bmp
ShowLanguageDialog=yes
SolidCompression=yes
WizardSmallImageFile=WizardSmallImageFile.bmp
UninstallStyle=modern
CompressLevel=9
AllowCancelDuringInstall=no
ExtraDiskSpaceRequired=10240

[Languages]
Name: "de"; MessagesFile: "deutsch.isl"; InfoBeforeFile: "Hinweis.rtf"
Name: "en"; MessagesFile: "englisch.isl"; InfoBeforeFile: "HinweisEn.rtf"

[Tasks]
Name: "desktopicon"; Description: "Ein &Desktopicon erstellen"; GroupDescription: "Zusätzliche Icons:"; Flags: unchecked
Name: "quicklaunchicon"; Description: "Ein &Quicklaunchicon erstellen"; GroupDescription: "Zusätzliche Icons:"; Flags: unchecked

[Files]
Source: "..\Executable\BirthdayRemember.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\Executable\BRCrypt.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\Executable\StandardRememberSound.wav"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\Executable\languages\*.*"; DestDir: "{app}\languages\"; Flags: ignoreversion
Source: "..\Executable\manual\*.*"; DestDir: "{app}\manual\"; Flags: ignoreversion

[INI]
Filename: "{app}\BirthdayRemember.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://www.BirthdayRemember.de"

[Icons]
Name: "{group}\BirthdayRemember"; Filename: "{app}\BirthdayRemember.exe"
Name: "{group}\BirthdayRemember Hilfe"; Filename: "{app}\manual\index.html"
Name: "{group}\BirthdayRemember im Web"; Filename: "{app}\BirthdayRemember.url"
Name: "{group}\BirthdayRemember Deinstallieren"; Filename: "{uninstallexe}"
Name: "{userdesktop}\BirthdayRemember"; Filename: "{app}\BirthdayRemember.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\BirthdayRemember"; Filename: "{app}\BirthdayRemember.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\manual\index.html"; Description: "ReadMe anzeigen"; Flags: nowait postinstall skipifsilent runmaximized shellexec
Filename: "{app}\BirthdayRemember.exe"; Description: "BirthdayRemember jetzt starten"; Flags: nowait postinstall skipifsilent

[UninstallDelete]
Type: files; Name: "{app}\languages\*.*"

[Registry]
Root: HKCU; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run "; ValueName: "BirthdayRemember"; Flags: uninsdeletevalue;

[code]

procedure vLabelOnClick(Sender: TObject);
var
Dummy: Integer;
begin
InstShellExec('http://www.BirthdayRemember.de', '', '', SW_SHOWNORMAL, Dummy);
end;


function InitializeSetup(): Boolean;
var vString1,vString2: String;
begin
Result:=True;
if ActiveLanguage='de' then
begin
vString1:='BirthdayRemember läuft gerade. Bitte beenden Sie BirthdayRemember, bevor Sie das Setup starten.';
vString2:='Es kann sein, dass das Update nicht richtig ausgeführt werden kann. Wollen Sie trotzdem fortfahren?';
end else
begin
vString1:='BirthdayRemember is running at the moment. Please close BirthdayRemember and continue.';
vString2:='It could be that this update cannot be written succesfully. Continue everyway?';
end;
while FindWindowByWindowName('BirthdayRemember')<>0 do
begin
case MsgBox(vString1,mbConfirmation,MB_ABORTRETRYIGNORE ) of
idAbort: begin
Result:=False;
Break;
end;
idIgnore: if MsgBox(vString2,mbConfirmation,MB_YESNO)=idYes then
Break;
end;
end;
end;

procedure InitializeWizard();
var vLabel: TNewStaticText;
begin
vLabel := TNewStaticText.Create(WizardForm);
vLabel.Top := WizardForm.CancelButton.Top+5;
vLabel.Left := WizardForm.ClientWidth - WizardForm.CancelButton.Left - WizardForm.CancelButton.Width;
vLabel.Caption := 'http://www.BirthdayRemember.de';
vLabel.Font.Style := vLabel.Font.Style + [fsUnderLine];
vLabel.Font.Color := clBlue;
vLabel.Cursor := crHand;
vLabel.OnClick := @vLabelOnClick;
vLabel.Parent := WizardForm;
end;

function NextButtonClick(CurPage: Integer): Boolean;
begin
Result:=True
if CurPage=5 then
if DirExists(WizardForm.DirEdit.Text) and (FileExists(WizardForm.DirEdit.Text+'\BirthdayReme mber.exe') or FileExists(WizardForm.DirEdit.Text+'BirthdayRememb er.exe')) and (Not(FileExists(WizardForm.DirEdit.Text+'\BRCrypt. dll') or FileExists(WizardForm.DirEdit.Text+'BRCrypt.dll')) ) then
begin
Result:=False;
if ActiveLanguage='de' then
MsgBox('In dem Verzeichnis:'+#10#13+#10#13+WizardForm.DirEdit.Tex t+#10#13+#10#13+'ist bereits eine vorherige Version von BirthdayRemember installiert. Wenn sie BirthdayRemember 6.0.3 in dieses Verzeichnis installieren, kann es zu Datenverlust kommen. Bitte wählen Sie ein anderes Verzeichnis.'+#13#10+#13#10+'Im ReadMe finden Sie wichtige Informationen für den Import der Daten aus BirthdayRemember Version <= 5.5',MbInformation,Mb_Ok)
else
MsgBox('In the directory:'+#10#13+#10#13+WizardForm.DirEdit.Text+ #10#13+#10#13+'is already a previous version of BirthdayRemember installed. If you install BirthdayRemember 6.0.3 in this directory, entries could be deleted. Please select an other directory.'+#13#10+#13#10+'Im ReadMe finden Sie wichtige Informationen für den Import der Daten aus BirthdayRemember Version <= 5.5',MbInformation,Mb_Ok)
end;
end;
"Optimistisch ist diejenige Weltanschauung, die das Sein höher als das Nichts stellt und so die Welt und das Leben als etwas an sich Wertvolles bejaht."
Albert Schweitzer
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#15

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:46
Och Onz. Zwischen "schicken" und "hier abdrucken" gibt´s doch aber einen Unterschied.
  Mit Zitat antworten Zitat
moritz

Registriert seit: 18. Apr 2003
1.037 Beiträge
 
#16

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 20:47
Zitat von MathiasSimmack:
Mein Angebot steht noch: Wer Erfahrung damit hat, darf gern die entsprechenden Kapitel machen, und sein/ihr Name kommt dann mit ins Copyright.
Wo? Wie? Wann? Was? Ich könnte dir Helfen, quatsch mich mal per ICQ an

Gruß
"Optimistisch ist diejenige Weltanschauung, die das Sein höher als das Nichts stellt und so die Welt und das Leben als etwas an sich Wertvolles bejaht."
Albert Schweitzer
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Kennt jemand InnoSetup ?

  Alt 15. Mär 2004, 21:30
Meld dich bei ihm per E-mail, er hat kein ICQ.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#18

Re: Kennt jemand InnoSetup ?

  Alt 18. Mär 2004, 12:30
Habe mir mal das Simmacksche Tutorial durchgelesen. Das sieht ja alles gut aus. Jedenfalls wesentlich besser, als das Installshield. Aber eine Sache vermisse ich. Vielleicht kann die hier geklärt werden : was ist, wenn ich ein Programm mitliefern will, welches selbst installiert werden muß ? Bei mir wäre das die Datenbank. Und dabei will ich keinem zumuten diese von Hand zu installieren / deinstallieren. Hinzu kommt, daß sie vielleicht schon auf dem Rechner drauf ist. Dann darf sie nicht installiert werden und auf gar keinen Fall deinstalliert.
Gruß
Hansa
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#19

Re: Kennt jemand InnoSetup ?

  Alt 18. Mär 2004, 12:57
Erst mal herzlichen Dank für das Lob.

Dein Problem lässt sich mit den Bordmitteln von Inno Setup eigentlich IMHO lösen. Du (nicht dein Kunde ) müsstest nur selbst herausfinden ob sich die Datenbank irgendwie im System verewigt. Ich meine damit typische Registry-Einträge unter "Software\<Firma>\" und solche Sachen.

Damit hättest du einen Ansatzpunkt und könntest beim Start des Setup nach eben solchen Einträgen suchen und diese dann auswerten (erwartete Datenbankversion, usw.).
Und dann kannst du ggf. die Installation dieser Datenbank von Hand (sprich: im Setup) auslösen lassen.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#20

Re: Kennt jemand InnoSetup ?

  Alt 18. Mär 2004, 13:25
Ui, hört sich (zumindest für mich) schwierig an. Ich glaube, ich lasse das doch besser den Enduser machen. Installation mit/ohne Datenbank. Wer die hat (Interbase/Firebird) müßte das wissen. Obwohl irgendeine Sicherheitsprüfung müßte noch rein. Das schöne Tuto muß ich aber noch genauer untersuchen. Wie ich das sehe, brauche ich da wahrscheinlich doch nur die EXE mit dem 2. Setup da einzufügen bei dem {app} oder bei ? und dann...

Dann hätte ich zumindest eine Version für Leute, die die Datenbank definitiv nicht haben und deshalb sowieso brauchen. So und jetzt hole ich das alles mit.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 09:59 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