@echo off setlocal EnableDelayedExpansion REM ================================ REM Instalador RustDesk - 2D Tecnologia REM ================================ set "BASE_URL=https://arquivos.2dtecnologia.com/download" set "MSI=%TEMP%\RustDesk. msi" set "INSTALL_DIR=C:\Program Files\RustDesk" REM Suas configurações set "ID_SERVER=rdp.2dtecnologia.com" set "RELAY_SERVER=rdp.2dtecnologia.com:21117" set "RENDEZVOUS_SERVER=rdp.2dtecnologia.com:21116" set "KEY=XwJwtxLtnYv23SpLqJfH06jf74LYzmGuu8qF7S++gDU=" REM ===== ADMIN ===== net session >nul 2>&1 || ( echo Execute como ADMINISTRADOR. pause exit /b 1 ) echo ================================ echo Instalando RustDesk echo ================================ REM ===== DOWNLOAD ===== echo Baixando instalador... powershell -Command "Invoke-WebRequest '%BASE_URL%/RustDesk.msi' -OutFile '%MSI%'" if not exist "%MSI%" ( echo ERRO: Falha ao baixar o instalador echo URL: %BASE_URL%/RustDesk.msi pause exit /b 1 ) echo [OK] Download concluido REM ===== PARAR TUDO ANTES DE INSTALAR ===== echo Parando RustDesk completamente... taskkill /IM RustDesk.exe /F /T >nul 2>&1 sc stop rustdesk >nul 2>&1 timeout /t 3 >nul REM ===== INSTALL ===== echo Instalando RustDesk... msiexec /i "%MSI%" /qn /norestart timeout /t 8 >nul REM ===== VERIFICAR ===== if not exist "%INSTALL_DIR%\RustDesk.exe" ( echo ERRO: Instalacao falhou pause exit /b 1 ) echo [OK] RustDesk instalado REM ===== GARANTIR QUE ESTÁ PARADO ===== echo Garantindo que RustDesk esta fechado... taskkill /IM RustDesk.exe /F /T >nul 2>&1 sc stop rustdesk >nul 2>&1 timeout /t 3 >nul REM Verificar se realmente fechou tasklist /FI "IMAGENAME eq RustDesk.exe" 2>NUL | find /I /N "RustDesk. exe">NUL if "%ERRORLEVEL%"=="0" ( echo [AVISO] RustDesk ainda esta rodando, forcando encerramento... taskkill /F /IM RustDesk. exe /T timeout /t 3 >nul ) echo [OK] RustDesk completamente fechado REM ===== CRIAR DIRETORIOS ===== echo Criando diretorios de configuracao... if not exist "%APPDATA%\RustDesk\config\" mkdir "%APPDATA%\RustDesk\config\" if not exist "%INSTALL_DIR%" mkdir "%INSTALL_DIR%" REM ===== CRIAR ARQUIVO DE CONFIGURACAO ===== echo Criando configuracao personalizada... set "USER_CFG=%APPDATA%\RustDesk\config\RustDesk2.toml" set "INSTALL_CFG=%INSTALL_DIR%\RustDesk2.toml" REM Criar arquivo temporário set "TEMP_CFG=%TEMP%\rustdesk_custom_config.toml" ( echo relay_server = "%RELAY_SERVER%" echo rendezvous_server = "%RENDEZVOUS_SERVER%" echo nat_type = 2 echo key = "%KEY%" echo. echo [options] echo custom-rendezvous-server = "%ID_SERVER%" echo relay-server = "%ID_SERVER%" echo key = "%KEY%" echo direct-server = "Y" echo allow-remote-config-modification = "N" ) > "%TEMP_CFG%" REM Copiar para todos os locais echo Aplicando configuracao em todos os locais... copy /Y "%TEMP_CFG%" "%USER_CFG%" >nul 2>&1 if exist "%USER_CFG%" ( echo [OK] Config aplicada em: %USER_CFG% ) else ( echo [ERRO] Falha ao criar: %USER_CFG% ) copy /Y "%TEMP_CFG%" "%INSTALL_CFG%" >nul 2>&1 if exist "%INSTALL_CFG%" ( echo [OK] Config aplicada em: %INSTALL_CFG% ) REM Tentar criar no perfil do serviço set "SERVICE_CFG=C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk2.toml" if not exist "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\" ( mkdir "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\" 2>nul ) copy /Y "%TEMP_CFG%" "%SERVICE_CFG%" >nul 2>&1 REM Tornar arquivo somente leitura (para evitar sobrescrita) echo Protegendo arquivo de configuracao... attrib +R "%USER_CFG%" >nul 2>&1 REM ===== EXIBIR CONFIGURACAO ===== echo. echo ================================ echo CONFIGURACAO APLICADA echo ================================ type "%USER_CFG%" echo ================================ echo. REM ===== CONFIGURAR VIA CLI (SEM ABRIR INTERFACE) ===== echo Aplicando via linha de comando... cd /d "%INSTALL_DIR%" start /B "" RustDesk.exe --server "%ID_SERVER%" >nul 2>&1 timeout /t 2 >nul taskkill /IM RustDesk.exe /F /T >nul 2>&1 timeout /t 2 >nul REM ===== INSTALAR E INICIAR SERVICO ===== echo Instalando servico... "%INSTALL_DIR%\RustDesk.exe" --install-service timeout /t 3 >nul echo Iniciando servico... sc start rustdesk >nul 2>&1 timeout /t 3 >nul REM ===== VERIFICAR SERVICO ===== sc query rustdesk | find "RUNNING" >nul if %errorlevel% equ 0 ( echo [OK] Servico RustDesk rodando ) else ( echo [AVISO] Servico pode nao estar rodando corretamente sc query rustdesk ) REM ===== AGUARDAR ANTES DE ABRIR ===== echo Aguardando estabilizacao... timeout /t 5 >nul REM ===== ABRIR APLICATIVO ===== echo Abrindo RustDesk... start "" "%INSTALL_DIR%\RustDesk.exe" echo. echo ================================ echo INSTALACAO CONCLUIDA echo ================================ echo. echo Servidor: %ID_SERVER% echo Rendezvous: %RENDEZVOUS_SERVER% echo Relay: %RELAY_SERVER% echo. echo O arquivo de configuracao foi protegido contra alteracoes. echo. echo Verifique em: Menu -^> Network echo. pause REM ===== LIMPAR ===== del "%MSI%" >nul 2>&1 del "%TEMP_CFG%" >nul 2>&1 exit