Zusi-Verzeichnisse: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 38: | Zeile 38: | ||
Wer für sein Programm den ZusiSteam-Ordner erkennen muss, hat etwas mehr Aufwand. Es empfiehlt sich folgende Strategie: | Wer für sein Programm den ZusiSteam-Ordner erkennen muss, hat etwas mehr Aufwand. Es empfiehlt sich folgende Strategie: | ||
# Bevorzugte Lösung: Das Programm im Zusi-Programme-Ordner im Unterordner _Tools\MeinProgramm ablegen. In diesem Fall kann man prüfen, ob es in den Ordnern <code>..</code>, <code>..\..</code> oder <code>..\..\..</code> folgende Dateien oder folgende Unterordner mit folgenden Dateien gibt: <code>ZusiSim.exe</code>, <code>ZusiSim.64.exe</code>, <code>32bit\ZusiSim.exe</code> oder <code>64bit\ZusiSim.64.exe</code> | # Bevorzugte Lösung: Das Programm im Zusi-Programme-Ordner im Unterordner _Tools\MeinProgramm ablegen. In diesem Fall kann man prüfen, ob es in den Ordnern <code>..</code>, <code>..\..</code> oder <code>..\..\..</code> folgende Dateien oder folgende Unterordner mit folgenden Dateien gibt: <code>ZusiSim.exe</code>, <code>ZusiSim.64.exe</code>, <code>32bit\ZusiSim.exe</code> oder <code>64bit\ZusiSim.64.exe</code> | ||
# Falls man dies nicht so umsetzen möchte gäbe es folgende einfachere Lösung: Eine Fehlermeldung, in der man beschreibt, wie man in der Steam-Version die Dateiverwaltung als Admin öffnet, und den Einstellungsdialog mit OK verlässt | # Falls man dies nicht so umsetzen möchte gäbe es folgende einfachere Lösung: Eine Fehlermeldung, in der man beschreibt, wie man in der Steam-Version die Dateiverwaltung als Admin öffnet, und den Einstellungsdialog mit OK verlässt. Damit schreibt die Verwaltung die Pfade in die Registry und sie können von dort ausgelesen werden. | ||
# Im Grundsatz wäre es auch möglich, über die Registry den Haupt-Steam-Ordner zu finden, von dort aus über die Steam-JSON-Dateien alle anderen Steam-Ordner zu finden, und dann von dort aus die Zusi-Konfig-JSON-Datei zur App-ID 1040730 zu finden. Aufgrund der Komplexität, der impliziten Abhängigkeit von Standards, die Steam nicht garantiert, und Aufgrund schwer überschaubarer Testfälle und Randbedingungen ist diese Vorgehensweise nicht zu empfehlen. | # Im Grundsatz wäre es auch möglich, über die Registry den Haupt-Steam-Ordner zu finden, von dort aus über die Steam-JSON-Dateien alle anderen Steam-Ordner zu finden, und dann von dort aus die Zusi-Konfig-JSON-Datei zur App-ID 1040730 zu finden. Aufgrund der Komplexität, der impliziten Abhängigkeit von Standards, die Steam nicht garantiert, und Aufgrund schwer überschaubarer Testfälle und Randbedingungen ist diese Vorgehensweise nicht zu empfehlen. |
Version vom 12. Juli 2025, 17:19 Uhr
Hinweis zu Registry-Einträgen
Sämtliche Einträge befinden sich im Schlüssel HKEY_LOCAL_MACHINE\Software\Zusi3
.
Wenn auf einem 64-Bit-Rechner Zusi in der 32-Bit-Version installiert wurde liegt der Schlüssel unter HKEY_LOCAL_MACHINE\Wow6432Node\Software\Zusi3
. Diese Umleitung erledigt Windows automatisch, wenn man den Schlüssel mit dem KEY_WOW64_32KEY
-Flag öffnet:
RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Zusi3", 0, KEY_READ | KEY_WOW64_32KEY, &key)
Die Steam-Version legt bei der Installation keine Registry-Einträge zu den Datenverzeichnissen an. Die Einträge werden erst dann geschrieben, wenn der Benutzer einmal die Zusi-Dateiverwaltung als Administrator gestartet und dort das Fenster "Generelle Zusi-Einstellungen" mit "OK" verlassen hat. Deshalb gibt es hardkodierte Standardpfade als Rückfallebene.
Programmverzeichnis
- Demo-Version: Wert
ZusiVerzeichnisDemo
- Stick-Version: Wert
ZusiVerzeichnis
- Steam-Version: Wert
ZusiVerzeichnisSteam
- In der Steam-Version wird Zusi in die Steam-Datenbank in einen dafür vorgesehenen Ordner gelegt. Vermutlich meistens
steamapps\common\ZUSI 3 - Aerosoft Edition\
. In diesem Ordner befinden sich dann die Unterordner_ZusiData; 32bit; 64bit
- Standardmäßig sind die Registry-Einträge in der Steam-Version nicht gesetzt. Für weitere Informationen siehe der Abschnitt #Erkennen des Zusi-Steam-Verzeichnis.
- In der Steam-Version wird Zusi in die Steam-Datenbank in einen dafür vorgesehenen Ordner gelegt. Vermutlich meistens
Datenverzeichnis eigene Daten
- Stick-Version: Wert
DatenVerzeichnis
- Steam-Version: Wert
DatenVerzeichnisSteam
- Fallback (wenn kein Wert existiert):
<Öffentliche Dokumente>\Zusi3
bzw.<Öffentliche Dokumente>\Zusi3Steam
; wenn beide Verzeichnisse existieren, ist dasZusi3Steam
-Verzeichnis zu nehmen.- Der Ordner "Öffentliche Dokumente" ist der Ordner
CSIDL_COMMON_DOCUMENTS
(SHGetFolderPath, kompatibel mit Windows XP) bzw.FOLDERID_PublicDocuments
(SHGetKnownFolderPath, ab Windows Vista).
- Der Ordner "Öffentliche Dokumente" ist der Ordner
Datenverzeichnis offizielle Daten (ab 3.3.0.0)
- Demo-Version: Wert
DatenVerzeichnisDemo
- Stick-Version: Wert
DatenVerzeichnisOffiziell
- Steam-Version: Wert
DatenVerzeichnisOffiziellSteam
- Fallback (wenn kein Wert existiert):
<ZusiVerzeichnis>\_zusidata
oder<Zusi-Steam-Verzeichnis>\..\_zusidata
Erkennen der Stick-Version
Ist relativ zur Exe-Datei die Datei _InstSetup\usb.dat
vorhanden, handelt es sich um die Stick-Version, ansonsten um die Steam-Version.
Erkennen des Zusi-Steam-Verzeichnis
Wer für sein Programm den ZusiSteam-Ordner erkennen muss, hat etwas mehr Aufwand. Es empfiehlt sich folgende Strategie:
- Bevorzugte Lösung: Das Programm im Zusi-Programme-Ordner im Unterordner _Tools\MeinProgramm ablegen. In diesem Fall kann man prüfen, ob es in den Ordnern
..
,..\..
oder..\..\..
folgende Dateien oder folgende Unterordner mit folgenden Dateien gibt:ZusiSim.exe
,ZusiSim.64.exe
,32bit\ZusiSim.exe
oder64bit\ZusiSim.64.exe
- Falls man dies nicht so umsetzen möchte gäbe es folgende einfachere Lösung: Eine Fehlermeldung, in der man beschreibt, wie man in der Steam-Version die Dateiverwaltung als Admin öffnet, und den Einstellungsdialog mit OK verlässt. Damit schreibt die Verwaltung die Pfade in die Registry und sie können von dort ausgelesen werden.
- Im Grundsatz wäre es auch möglich, über die Registry den Haupt-Steam-Ordner zu finden, von dort aus über die Steam-JSON-Dateien alle anderen Steam-Ordner zu finden, und dann von dort aus die Zusi-Konfig-JSON-Datei zur App-ID 1040730 zu finden. Aufgrund der Komplexität, der impliziten Abhängigkeit von Standards, die Steam nicht garantiert, und Aufgrund schwer überschaubarer Testfälle und Randbedingungen ist diese Vorgehensweise nicht zu empfehlen.