Seine Ansagen "teste links auf dem 1080p monitor nicht mehr auf dem main ... weil da schau ich nun video" "und das steuertool hat noch kein installer und die rechnungstool hat das icon nicht auf dem desktop etc selbe beim steuertool" Pruefplatz Der Platz fuer Pruefstandsfenster lag bei "Bildschirmbreite + 20", also RECHTS neben dem Hauptmonitor. Bei ihm steht der zweite Monitor aber LINKS (x = -1920), und rechts ist gar nichts: die Fenster gingen ins Leere. Sie liefen, waren aber nirgends zu sehen - das hat beim Bildermachen einige Zeit gekostet, ehe es auffiel. theme.pruefplatz() sucht jetzt den nicht-primaeren Monitor und liefert dessen Ecke. Gibt es keinen, bleibt es beim alten Verhalten. Das Steuerrechnungstool hatte ueberhaupt keine Sonderposition - dessen Pruefstandsfenster gingen mitten auf den Hauptbildschirm auf. Verknuepfungen Der Haken "Verknuepfung auf dem Desktop" ist jetzt vorgesetzt statt abgewaehlt, und jede Verknuepfung traegt IconFilename ausdruecklich. Ohne das erbt sie ihr Symbol vom UPDATER - und Windows zeigte an ihrer Stelle das nackte Standardsymbol. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01V4t48uxDok5rJXhC9bX1Ax
100 lines
4.2 KiB
Text
100 lines
4.2 KiB
Text
; Installer fuer das Rechnungstool (Inno Setup 6)
|
|
;
|
|
; ENTSCHEIDUNGEN, DIE HIER STECKEN - und warum
|
|
; --------------------------------------------
|
|
; 1. INSTALLATION PRO BENUTZER nach %LOCALAPPDATA%\Programs, NICHT nach
|
|
; "Program Files". Grund: der Updater muss die EXE ablegen duerfen. In
|
|
; Program Files darf ein normaler Benutzer nicht schreiben - jedes Update
|
|
; wuerde an fehlenden Rechten scheitern oder eine Administrator-Abfrage
|
|
; erzwingen. Chrome, VS Code, Discord, Teams und Fusion 360 machen es
|
|
; genauso, aus demselben Grund.
|
|
;
|
|
; 2. DIE VERKNUEPFUNG ZEIGT AUF DEN UPDATER, nicht auf das Programm. So schaut
|
|
; jeder Start zuerst nach einer neuen Fassung. Der Updater startet danach
|
|
; die eigentliche EXE - die ist dabei noch gar nicht in Benutzung und laesst
|
|
; sich deshalb problemlos ersetzen.
|
|
;
|
|
; 3. KEINE DATEN ANFASSEN. Der Installer legt keine Rechnungsordner an, kein
|
|
; Journal, kein Nummernbuch - und beim Deinstallieren wird davon nichts
|
|
; entfernt. Das Programm schreibt aufbewahrungspflichtige Belege
|
|
; (§ 147 AO, zehn Jahre). Ein Deinstallieren darf sie nie mitnehmen.
|
|
;
|
|
; 4. Der Eintrag unter "Apps & Features" entsteht von selbst - Inno Setup legt
|
|
; den Registry-Schluessel unter HKCU an. Da muss niemand von Hand hinein.
|
|
|
|
#define Name "Rechnungstool"
|
|
#define Herausgeber "ravokk"
|
|
#define ExeUpdater "Updater.exe"
|
|
#define Webseite "https://git.pcore.de/TheMockTv/rechnungstool"
|
|
|
|
[Setup]
|
|
AppId={{7F3A9C2E-51D4-4B86-9A17-2C0E8B4D6A31}
|
|
AppName={#Name}
|
|
AppVersion={#Version}
|
|
AppVerName={#Name} {#Version}
|
|
AppPublisher={#Herausgeber}
|
|
AppPublisherURL={#Webseite}
|
|
AppSupportURL={#Webseite}/issues
|
|
AppUpdatesURL={#Webseite}/releases
|
|
|
|
; --- pro Benutzer, ohne Adminrechte ---
|
|
PrivilegesRequired=lowest
|
|
; Der Zielordner ist NICHT waehlbar. Wer hier "Programme" auswaehlen
|
|
; koennte, braeche sich den Updater: dort darf ein normaler Benutzer
|
|
; nicht schreiben. Chrome, Teams und Discord blenden diese Seite aus
|
|
; demselben Grund aus. In "Programme" gehoert hoechstens eine
|
|
; Verknuepfung - und die liegt ohnehin im Startmenue.
|
|
DisableDirPage=yes
|
|
DefaultDirName={localappdata}\Programs\{#Name}
|
|
DefaultGroupName={#Name}
|
|
DisableProgramGroupPage=yes
|
|
UsePreviousAppDir=yes
|
|
|
|
OutputDir=setup
|
|
OutputBaseFilename=Rechnungstool-Setup-{#Version}
|
|
Compression=lzma2
|
|
SolidCompression=yes
|
|
WizardStyle=modern
|
|
; Das Programmsymbol - auch fuer den Installer selbst und den
|
|
; Eintrag unter "Apps & Features".
|
|
SetupIconFile=assets\programm.ico
|
|
UninstallDisplayIcon={app}\{#ExeProgramm}
|
|
ArchitecturesInstallIn64BitMode=x64compatible
|
|
|
|
; Erprobungsfassung - das steht auch im Programm selbst.
|
|
AppComments=Erprobungsfassung. Benutzung auf eigene Gefahr.
|
|
|
|
[Languages]
|
|
Name: "deutsch"; MessagesFile: "compiler:Languages\German.isl"
|
|
|
|
[Tasks]
|
|
; Kein "unchecked": der Haken ist vorgesetzt. Er hatte nach dem
|
|
; Installieren kein Symbol auf dem Desktop und musste das Programm
|
|
; suchen (07.09.2026). Wer es nicht will, nimmt den Haken heraus.
|
|
Name: "desktopicon"; Description: "Verknüpfung auf dem Desktop anlegen"; \
|
|
GroupDescription: "Zusätzliche Verknüpfungen:"
|
|
|
|
[Files]
|
|
; Der Updater - das ist, was der Benutzer startet.
|
|
Source: "dist\{#ExeUpdater}"; DestDir: "{app}"; Flags: ignoreversion
|
|
; Das Programm selbst, mit der Nummer im Namen. Der Updater erkennt daran,
|
|
; was installiert ist, und legt neue Fassungen daneben statt darueber.
|
|
Source: "dist\{#ExeProgramm}"; DestDir: "{app}"; Flags: ignoreversion
|
|
|
|
[Icons]
|
|
; Beide Verknuepfungen zeigen auf den UPDATER, nicht auf das Programm.
|
|
; IconFilename ausdruecklich: ohne das erbt die Verknuepfung das Symbol vom
|
|
; UPDATER, und Windows zeigte an ihrer Stelle das nackte Standardsymbol.
|
|
Name: "{group}\{#Name}"; Filename: "{app}\{#ExeUpdater}"; IconFilename: "{app}\{#ExeProgramm}"
|
|
Name: "{group}\{#Name} deinstallieren"; Filename: "{uninstallexe}"
|
|
Name: "{userdesktop}\{#Name}"; Filename: "{app}\{#ExeUpdater}"; IconFilename: "{app}\{#ExeProgramm}"; Tasks: desktopicon
|
|
|
|
[Run]
|
|
Filename: "{app}\{#ExeUpdater}"; Description: "{#Name} jetzt starten"; \
|
|
Flags: nowait postinstall skipifsilent
|
|
|
|
[UninstallDelete]
|
|
; Nur die Buchfuehrung des Updaters.
|
|
; NICHTS von den Daten des Betriebs - keine Rechnungen, kein Journal, kein
|
|
; Nummernbuch. Die liegen ohnehin woanders und muessen zehn Jahre bleiben.
|
|
Type: files; Name: "{app}\installiert.json"
|