Initiale Version des Romexis Implant Library Online Installers

- GUI zur Verwaltung von Implantbibliotheken
- Automatischer Download von Planmeca
- Integration der Original-Herstellerinstaller
- Automatisches Romexis-Backup
- Download-Cache und Updateerkennung
- Fortschrittsanzeige und Protokollierung
This commit is contained in:
2026-05-31 17:35:36 +02:00
commit 42e37e8de7
5 changed files with 1538 additions and 0 deletions

46
.gitignore vendored Normal file
View File

@@ -0,0 +1,46 @@
# PowerShell / editor
*.ps1xml
*.psm1
*.psd1
*.ps1.user
.vscode/
.idea/
# Lokale Logs / Testausgaben
*.log
log.txt
logs/
*.tmp
*.temp
# Downloads / Cache / Herstellerpakete
*.zip
*.download
*.meta.json
RomexisImplantLibraryCache/
cache/
downloads/
# Entpackte Installationsdateien
temp/
tmp/
extracted/
Implant_library_files/
# Backups / Datenbank Dumps
*.bak
*.BAK
*.sql.bak
backup/
backups/
# Windows / Explorer
Thumbs.db
Desktop.ini
$RECYCLE.BIN/
# macOS falls das Repo mal dort geöffnet wird
.DS_Store
# PowerShell Transcripts
PowerShell_transcript*.txt

40
CHANGELOG.md Normal file
View File

@@ -0,0 +1,40 @@
# Changelog
Alle relevanten Änderungen an diesem Projekt werden hier dokumentiert.
## [0.1.0] - 2026-05-31
### Hinzugefügt
- Erste Repo-Struktur vorbereitet
- README.md erstellt
- LICENSE ergänzt
- `.gitignore` ergänzt
- CHANGELOG.md erstellt
- Beschreibung für PowerShell/WinForms Installer ergänzt
- Hinweise zu Cache, Backup und Romexis-Installation aufgenommen
### Enthaltene Funktionen im Installer
- Planmeca Implant Library Webseite parsen
- Bibliotheken in GUI anzeigen
- Ausgewählte Bibliotheken herunterladen
- Nur-Download-Modus
- Cache mit Metadatenprüfung
- Fortschrittsbalken für Download und Entpacken
- Automatische Romexis-Pfaderkennung
- SQL-Konfiguration aus Romexis lesen
- Optionales SQL-Backup vor Installation
- Kopieren von Implantat- und Sleeve-Dateien
- Aufruf der originalen Hersteller-/Planmeca-Batchdateien
- Hashprüfung bekannter Installerskripte
## [Unreleased]
### Ideen / offen
- Hersteller-Suche oder Filter in der GUI
- Optionaler Export der Downloadliste
- Bessere Zusammenfassung nach Installation
- Optionaler Silent-Modus
- Ausführlicher Prüfbericht nach SQL-Import

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2026 Patrick Gniza
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

93
README.md Normal file
View File

@@ -0,0 +1,93 @@
# Romexis Implant Library Online Installer
Kleines PowerShell/WinForms-Tool zum Herunterladen und Installieren von Planmeca-Romexis-Implantatbibliotheken.
Das Tool liest die öffentliche Planmeca Implant Library Webseite aus, zeigt die gefundenen Bibliotheken in einer GUI an und kann ausgewählte ZIP-Pakete herunterladen, entpacken und über die originalen mitgelieferten Planmeca-/Hersteller-Skripte installieren.
## Funktionen
- Online-Liste der verfügbaren Implantatbibliotheken laden
- Bibliotheken per Checkbox auswählen
- ZIP-Dateien herunterladen und lokal cachen
- Cache per HTTP-Metadaten prüfen (`ETag`, `Last-Modified`, Dateigröße)
- Fortschrittsanzeige für Download und Entpacken
- Nur-Download-Modus für Offline-/Mitnahme-Szenarien
- Automatisches Ermitteln des Romexis-Installationspfads
- Automatisches Lesen der SQL-Konfiguration aus `romexis_server.properties`
- Optionales Datenbankbackup vor Installation
- Kopieren von Implantat- und Sleeve-Geometrien
- Aufruf der originalen `Install_implant.bat` / `Install_script.bat`
- Hashprüfung der bekannten Installerskripte
## Voraussetzungen
- Windows
- PowerShell 5.1 oder neuer
- Installiertes Planmeca Romexis
- Ausführung am Romexis-Server dringend empfohlen
- SQL Server Command Line Tools (`sqlcmd`) für Backup und SQL-Zugriff
- Schreibrechte auf:
- `C:\ProgramData\RomexisImplantLibraryCache`
- `C:\Program Files\Planmeca\Romexis\geometries`
- Administrative Rechte werden je nach Umgebung benötigt
## Verwendung
PowerShell als Administrator starten und das Skript ausführen:
```powershell
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\RomexisImplantInstaller.ps1
```
Danach:
1. Bibliotheksliste wird automatisch geladen.
2. Gewünschte Bibliotheken auswählen.
3. Optional Backup aktiviert lassen.
4. Entweder nur herunterladen oder herunterladen und installieren.
## Cache
Die heruntergeladenen ZIP-Dateien werden standardmäßig unter folgendem Pfad abgelegt:
```text
C:\ProgramData\RomexisImplantLibraryCache
```
Neben jeder ZIP-Datei wird eine `.meta.json` gespeichert. Darin stehen unter anderem:
- URL
- ETag
- Last-Modified
- Content-Length
- Downloadzeitpunkt
- SHA256
Wenn sich eine Datei online geändert hat, wird sie erneut heruntergeladen.
## Backup
Vor der Installation kann automatisch ein SQL-Backup der Romexis-Datenbank erstellt werden. Das Backup ist nur als Sicherheitsnetz vor Bibliotheksänderungen gedacht und ersetzt kein reguläres Backupkonzept.
Die Logik ist an das Format vom Backup & Restore SCript von Tobias Bauer angeleht und kann damit ggf. wieder eingelesen werden
## Hinweise
Dieses Projekt ist kein offizielles Planmeca-Tool. Es ruft die von Planmeca bzw. den Herstellern mitgelieferten Installationsskripte auf, statt die SQL-Logik vollständig nachzubauen.
Die Nutzung erfolgt auf eigene Verantwortung. Vor produktivem Einsatz sollte ein vollständiges Backup vorhanden sein.
## Projektstruktur
```text
.
├── RomexisImplantInstaller.ps1
├── README.md
├── CHANGELOG.md
├── LICENSE
└── .gitignore
```
## Lizenz
Siehe [LICENSE](LICENSE).

1338
RomexisImplantInstaller.ps1 Normal file

File diff suppressed because it is too large Load Diff