; Proxmox SPICE Client — Custom NSIS Install Script ; Prüft ob virt-viewer installiert ist und installiert es bei Bedarf. !macro customInstall ; Prüfen ob remote-viewer.exe bereits vorhanden ist IfFileExists "$PROGRAMFILES64\VirtViewer\bin\remote-viewer.exe" vv_found IfFileExists "$PROGRAMFILES\VirtViewer\bin\remote-viewer.exe" vv_found ; Nicht gefunden — Benutzer fragen MessageBox MB_YESNO|MB_ICONQUESTION \ "VirtViewer wurde auf diesem System nicht gefunden.$\n$\n\ VirtViewer wird für SPICE-Verbindungen zu Proxmox-VMs benötigt.$\n\ Ohne VirtViewer können keine VMs geöffnet werden.$\n$\n\ Jetzt automatisch herunterladen und installieren (ca. 30 MB)?" \ IDYES vv_download IDNO vv_skip vv_download: DetailPrint "Lade VirtViewer herunter..." nsExec::ExecToLog 'powershell.exe -NonInteractive -Command \ "Invoke-WebRequest \ -Uri \"https://virt-manager.org/download/virt-viewer-x64.msi\" \ -OutFile \"$TEMP\virt-viewer-setup.msi\" \ -UseBasicParsing"' Pop $0 ${If} $0 != 0 MessageBox MB_OK|MB_ICONEXCLAMATION \ "Download fehlgeschlagen (Fehlercode: $0).$\n$\n\ Bitte VirtViewer nach der Installation manuell installieren:$\n\ https://virt-manager.org/download/" Goto vv_skip ${EndIf} DetailPrint "Installiere VirtViewer (bitte warten)..." ExecWait 'msiexec /i "$TEMP\virt-viewer-setup.msi" /quiet /norestart' $0 Delete "$TEMP\virt-viewer-setup.msi" ${If} $0 == 0 DetailPrint "VirtViewer erfolgreich installiert." ${Else} MessageBox MB_OK|MB_ICONEXCLAMATION \ "VirtViewer-Installation schlug fehl (Code: $0).$\n$\n\ Bitte nach Abschluss manuell installieren:$\n\ https://virt-manager.org/download/" ${EndIf} Goto vv_skip vv_found: DetailPrint "VirtViewer bereits installiert — OK." vv_skip: !macroend !macro customUnInstall ; Nichts extra — VirtViewer bleibt installiert !macroend