@echo off chcp 65001 >nul 2>&1 title Techniverse Fernwartung setlocal :: ============================================================ :: Techniverse Fernwartung - RustDesk Portable Starter :: Startet RustDesk mit vorkonfiguriertem Server :: Räumt nach dem Beenden alles auf :: ============================================================ :: ========================== KONFIGURATION =========================== :: Server-Adresse (Rendezvous + Relay) set "SERVER=fernwartung.techniverse.net" :: Öffentlicher Schlüssel des Servers set "KEY=uE3lJCcnk21qN0VUdqtwJG6QAnpahdB5b2gVe40oMbU=" :: API-Server (optional) - Nur setzen wenn ein eigener API-Server vorhanden ist :: Beispiel: set "API_SERVER=api.beispiel.de" set "API_SERVER=" :: ==================================================================== :: ANSI-Farbcodes definieren (Windows 10+) for /f %%a in ('echo prompt $E ^| cmd') do set "ESC=%%a" set "CYAN=%ESC%[36m" set "WHITE=%ESC%[97m" set "GRAY=%ESC%[90m" set "YELLOW=%ESC%[33m" set "RED=%ESC%[91m" set "GREEN=%ESC%[32m" set "RESET=%ESC%[0m" set "RUSTDESK_EXE=%~dp0rustdesk.exe" set "CONFIGDIR=%APPDATA%\RustDesk\config" set "CONFIG2=%CONFIGDIR%\RustDesk2.toml" set "CONFIG2_BAK=%CONFIGDIR%\RustDesk2.toml.techniverse-bak" set "INSTALLDIR=%LOCALAPPDATA%\rustdesk" :: Prüfe ob die RustDesk EXE vorhanden ist if not exist "%RUSTDESK_EXE%" ( echo. echo %RED%FEHLER: rustdesk.exe nicht gefunden.%RESET% echo %YELLOW%Bitte lege diese Datei neben %~nx0%RESET% echo. pause exit /b 1 ) echo. echo %CYAN%══════════════════════════════════════════════%RESET% echo %CYAN% Techniverse Fernwartung%RESET% echo %CYAN%══════════════════════════════════════════════%RESET% echo. echo %WHITE%RustDesk wird vorbereitet...%RESET% echo. :: Eventuell laufende RustDesk-Instanzen beenden taskkill /f /im rustdesk.exe >nul 2>&1 timeout /t 2 /nobreak >nul :: Config-Verzeichnis erstellen falls nicht vorhanden mkdir "%CONFIGDIR%" >nul 2>&1 :: Bestehende Config sichern (falls vorhanden) echo %WHITE%[1/3] Sichere bestehende Konfiguration...%RESET% if exist "%CONFIG2%" ( copy /y "%CONFIG2%" "%CONFIG2_BAK%" >nul echo %GRAY%Backup erstellt.%RESET% ) else ( echo %GRAY%Keine bestehende Konfiguration gefunden.%RESET% ) :: Server-Konfiguration schreiben echo %WHITE%[2/3] Konfiguriere Techniverse-Server...%RESET% ( echo rendezvous_server = "%SERVER%" echo nat_type = 1 echo serial = 0 echo. echo [options] echo custom-rendezvous-server = "%SERVER%" echo relay-server = "%SERVER%" echo key = "%KEY%" ) > "%CONFIG2%" if defined API_SERVER ( echo api-server = "%API_SERVER%" >> "%CONFIG2%" ) :: RustDesk starten echo %WHITE%[3/3] Starte RustDesk...%RESET% start "" "%RUSTDESK_EXE%" :: Warte kurz bis RustDesk sich initialisiert hat echo %GRAY%Warte auf RustDesk-Start...%RESET% timeout /t 8 /nobreak >nul :: Prüfe ob RustDesk tatsächlich läuft tasklist /fi "imagename eq rustdesk.exe" 2>nul | find /i "rustdesk.exe" >nul if errorlevel 1 ( echo. echo %RED%FEHLER: RustDesk konnte nicht gestartet werden.%RESET% echo %YELLOW%Versuche es erneut oder kontaktiere den Support.%RESET% echo. pause goto :cleanup ) echo. echo %CYAN%══════════════════════════════════════════════%RESET% echo %WHITE%RustDesk laeuft.%RESET% echo %WHITE%Teile deine ID mit dem Techniverse-Support.%RESET% echo. echo %YELLOW%Schliesse RustDesk um die Sitzung zu beenden.%RESET% echo %RED%Dieses Fenster NICHT schliessen.%RESET% echo %CYAN%══════════════════════════════════════════════%RESET% echo. echo %RED% !! ACHTUNG - BETRUGSWARNUNG !!%RESET% echo %YELLOW% Teile deine ID und dein Einmalpasswort%RESET% echo %YELLOW% NUR mit Personen, denen du vertraust!%RESET% echo %YELLOW% RustDesk wird haeufig fuer Betrug missbraucht.%RESET% echo %YELLOW% Techniverse wird dich NIE unaufgefordert%RESET% echo %YELLOW% nach deiner ID oder deinem Passwort fragen.%RESET% echo. :: Warte bis alle RustDesk-Prozesse beendet sind (Polling-Schleife) :waitloop timeout /t 2 /nobreak >nul tasklist /fi "imagename eq rustdesk.exe" 2>nul | find /i "rustdesk.exe" >nul if not errorlevel 1 goto :waitloop :cleanup echo. echo %YELLOW%Raeume auf...%RESET% :: RustDesk Prozesse beenden (falls noch laufend) taskkill /f /im rustdesk.exe >nul 2>&1 timeout /t 3 /nobreak >nul :: Config wiederherstellen oder aufräumen if exist "%CONFIG2_BAK%" ( echo %GRAY%Stelle urspruengliche Konfiguration wieder her...%RESET% copy /y "%CONFIG2_BAK%" "%CONFIG2%" >nul del "%CONFIG2_BAK%" >nul 2>&1 ) else ( echo %GRAY%Entferne Fernwartungs-Konfiguration...%RESET% del "%CONFIG2%" >nul 2>&1 ) :: RustDesk-Installation aufräumen (entpackte Dateien) if exist "%INSTALLDIR%" ( echo %GRAY%Entferne RustDesk-Dateien...%RESET% rmdir /s /q "%INSTALLDIR%" >nul 2>&1 ) :: RustDesk AppData aufräumen (nur wenn es vorher nicht installiert war) if not exist "%CONFIG2_BAK%" ( if exist "%APPDATA%\RustDesk" ( echo %GRAY%Entferne RustDesk AppData...%RESET% rmdir /s /q "%APPDATA%\RustDesk" >nul 2>&1 ) ) echo %GREEN%Aufgeraeumt. Bis zum naechsten Mal.%RESET% echo. timeout /t 3 /nobreak >nul exit /b 0