diff --git a/installer/medi-wol-setup.iss b/installer/medi-wol-setup.iss index d407567..706f043 100644 --- a/installer/medi-wol-setup.iss +++ b/installer/medi-wol-setup.iss @@ -20,7 +20,7 @@ DefaultGroupName={#MyAppName} AllowNoIcons=yes LicenseFile=..\LICENSE OutputDir=..\dist -OutputBaseFilename=medi-wol-setup +OutputBaseFilename=medi-wol-setup-v2 Compression=lzma SolidCompression=yes WizardStyle=modern @@ -50,19 +50,16 @@ Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: de Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon [Run] -; Dienst installieren und starten -Filename: "{app}\{#MyAppExeName}"; Parameters: "install -port {code:GetPort}"; StatusMsg: "Installiere Medi-WOL Dienst..."; Flags: runhidden -Filename: "net.exe"; Parameters: "start {#MyAppServiceName}"; StatusMsg: "Starte Medi-WOL Dienst..."; Flags: runhidden +; Startet die Anwendung nach der Installation +Filename: "{app}\{#MyAppExeName}"; Parameters: "-port {code:GetPort}"; StatusMsg: "Starte Medi-WOL..."; Flags: runhidden nowait [UninstallRun] -; Dienst stoppen und entfernen -Filename: "net.exe"; Parameters: "stop {#MyAppServiceName}"; Flags: runhidden -Filename: "{app}\{#MyAppExeName}"; Parameters: "uninstall"; Flags: runhidden +; Stoppe die Anwendung vor der Deinstallation +Filename: "taskkill.exe"; Parameters: "/F /IM {#MyAppExeName}"; Flags: runhidden [Code] var PortPage: TInputQueryWizardPage; - PortEdit: TEdit; procedure InitializeWizard; begin @@ -72,36 +69,31 @@ begin 'Bitte geben Sie den Port für den Medi-WOL Web-Server ein:'); PortPage.Add('Port:', False); - PortEdit := PortPage.Values[0]; - PortEdit.Text := '9000'; + PortPage.Values[0] := '9000'; end; function GetPort(Param: String): String; begin - Result := PortEdit.Text; + Result := PortPage.Values[0]; end; function NextButtonClick(CurPageID: Integer): Boolean; var PortStr: String; - i: Integer; Port: Integer; begin Result := True; if CurPageID = PortPage.ID then begin - PortStr := PortEdit.Text; + PortStr := PortPage.Values[0]; - // Prüfe ob nur Zahlen eingegeben wurden - for i := 1 to Length(PortStr) do + // Einfache Validierung + if PortStr = '' then begin - if (PortStr[i] < '0') or (PortStr[i] > '9') then - begin - MsgBox('Bitte geben Sie nur Zahlen ein.', mbError, MB_OK); - Result := False; - Exit; - end; + MsgBox('Bitte geben Sie einen Port ein.', mbError, MB_OK); + Result := False; + Exit; end; // Konvertiere zu Integer @@ -116,9 +108,7 @@ begin end; end; -[Registry] -; Umgebungsvariablen für den Dienst setzen -Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\{#MyAppServiceName}"; ValueType: string; ValueName: "Environment"; ValueData: "PORT={code:GetPort}"; Flags: createvalueifdoesntexist + [CustomMessages] german.CreateDesktopIcon=Desktop-Verknüpfung erstellen