Skip to content

Instantly share code, notes, and snippets.

@janasco
Created August 3, 2023 09:46
Show Gist options
  • Select an option

  • Save janasco/c6168d17ed6eb4b6eaf7fd46fb775f60 to your computer and use it in GitHub Desktop.

Select an option

Save janasco/c6168d17ed6eb4b6eaf7fd46fb775f60 to your computer and use it in GitHub Desktop.
AnyDesk Reset
@echo off & setlocal enableextensions
title Reset AnyDesk
reg query HKEY_USERS\S-1-5-19 >NUL || (echo Please Run as administrator.& pause >NUL&exit)
chcp 437
call :stop_any
del /f "%ALLUSERSPROFILE%\AnyDesk\service.conf"
del /f "%APPDATA%\AnyDesk\service.conf"
copy /y "%APPDATA%\AnyDesk\user.conf" "%temp%\"
rd /s /q "%temp%\thumbnails" 2>NUL
xcopy /c /e /h /r /y /i /k "%APPDATA%\AnyDesk\thumbnails" "%temp%\thumbnails"
del /f /a /q "%ALLUSERSPROFILE%\AnyDesk\*"
del /f /a /q "%APPDATA%\AnyDesk\*"
call :start_any
:lic
type "%ALLUSERSPROFILE%\AnyDesk\system.conf" | find "ad.anynet.id=" || goto lic
call :stop_any
move /y "%temp%\user.conf" "%APPDATA%\AnyDesk\user.conf"
xcopy /c /e /h /r /y /i /k "%temp%\thumbnails" "%APPDATA%\AnyDesk\thumbnails"
rd /s /q "%temp%\thumbnails"
call :start_any
echo *********
echo Completed.
echo(
goto :eof
:start_any
sc start AnyDesk
sc start AnyDesk
if %errorlevel% neq 1056 goto start_any
set AnyDesk1=%SystemDrive%\Program Files (x86)\AnyDesk\AnyDesk.exe
set AnyDesk2=%SystemDrive%\Program Files\AnyDesk\AnyDesk.exe
if exist "%AnyDesk1%" start "" "%AnyDesk1%"
if exist "%AnyDesk2%" start "" "%AnyDesk2%"
exit /b
:stop_any
sc stop AnyDesk
sc stop AnyDesk
if %errorlevel% neq 1062 goto stop_any
taskkill /f /im "AnyDesk.exe"
exit /b
@dashpops
Copy link

Linux instructions:

#use ifconfig to determine your wlan interface and use below to set random and burned in

sudo ifconfig wlp2s0 down sudo apt -y install macchanger sudo macchanger -r -b wlp2s0 sudo ifconfig wlp2s0 up rm -rf ~/.anydesk sudo apt autopurge anydesk -y sudo apt -y install anydesk

#save to /sbin/resetanydesk then chmod +x /sbin/resetanydesk and run resetanydesk

This will wipe your settings and hosts, if you want to save them: mv ~/.anydesk ~/.anydesk.old

I believe this no longer works, Im not on a wlan but on ethernet, not sure if that makes a difference though, Anydevk v7.1.0-1

@dashpops
Copy link

#use ifconfig to determine your wlan interface and use below to set random and permanent Replace your-interface-from-ifconfig with your interface name usually wlp3s0 wlan0, wlp0s0, etc.

ifconfig sudo ifconfig your-interface-from-ifconfig down sudo apt -y install macchanger sudo macchanger -r -b your-interface-from-ifconfig sudo ifconfig your-interface-from-ifconfig up rm -rf ~/.anydesk sudo apt autopurge anydesk -y sudo apt -y install anydesk

still works, but i did with my wired connection ensp2n0

Windows Instructions:
open terminal or cmd type notepad anydeskreset.bat
Paste the following, and after Run the batch file by double clicking or right click run as administrator.


:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
    IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params= %*
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"

@echo off & setlocal enableextensions
title Reset AnyDesk
reg query HKEY_USERS\S-1-5-19 >NUL || (echo Please Run as administrator.& pause >NUL&exit)
chcp 437
call :stop_any
del /f "%ALLUSERSPROFILE%\AnyDesk\service.conf"
del /f "%APPDATA%\AnyDesk\service.conf"
copy /y "%APPDATA%\AnyDesk\user.conf" "%temp%\"
rd /s /q "%temp%\thumbnails" 2>NUL
xcopy /c /e /h /r /y /i /k "%APPDATA%\AnyDesk\thumbnails" "%temp%\thumbnails"
del /f /a /q "%ALLUSERSPROFILE%\AnyDesk\*"
del /f /a /q "%APPDATA%\AnyDesk\*"
call :start_any
:lic
type "%ALLUSERSPROFILE%\AnyDesk\system.conf" | find "ad.anynet.id=" || goto lic
call :stop_any
move /y "%temp%\user.conf" "%APPDATA%\AnyDesk\user.conf"
xcopy /c /e /h /r /y /i /k "%temp%\thumbnails" "%APPDATA%\AnyDesk\thumbnails" 
rd /s /q "%temp%\thumbnails"
call :start_any
echo *********
echo Completed.
echo(
goto :eof
 
:start_any
sc start AnyDesk
sc start AnyDesk
if %errorlevel% neq 1056 goto start_any
set AnyDesk1=%SystemDrive%\Program Files (x86)\AnyDesk\AnyDesk.exe
set AnyDesk2=%SystemDrive%\Program Files\AnyDesk\AnyDesk.exe
if exist "%AnyDesk1%" start "" "%AnyDesk1%"
if exist "%AnyDesk2%" start "" "%AnyDesk2%"
exit /b
 
:stop_any
sc stop AnyDesk
sc stop AnyDesk
if %errorlevel% neq 1062 goto stop_any
taskkill /f /im "AnyDesk.exe"
exit /b

Linux instructions:
Open terminal



#use ifconfig to determine your wlan interface and use below to set random and permanent 
Replace your-interface-from-ifconfig with your interface name usually wlp3s0 wlan0, wlp0s0, etc.

ifconfig 
sudo ifconfig your-interface-from-ifconfig down
sudo apt -y install macchanger
sudo macchanger -r -b your-interface-from-ifconfig
sudo ifconfig your-interface-from-ifconfig up
rm -rf ~/.anydesk
sudo apt autopurge anydesk -y
sudo apt -y install anydesk

To make a shortcut to the script, sudo pico /sbin/resetanydesk and paste code above. change the wlan interface and save to /sbin/resetanydesk by pressing ctrl +o in pico then ctrl +x to exit, then run chmod +x /sbin/resetanydesk and run resetanydesk
MacOS:
Quit Anydesk Remove Anydesk from Applications folder
Open terminal type:

mv ~/.anydesk ~/.anydesk.old
rm -rf ~/.anydesk

sudo sh -c "curl https://raw.githubusercontent.com/shilch/macchanger/master/macchanger.sh > /usr/local/bin/macchanger && chmod +x /usr/local/bin/macchanger"

route -n get default | grep interface

sudo macchanger -r - p your-interface-name-from-previous-step

Download, install and Start Any desk (if it shows no id or the id is 0) then do a Logout from your MacOS user
Login again and start Anydesk
to revert changes rm -rf ~/.anydesk mv ~/.anydesk.old ~/.anydesk

it does not work on MacOS. The ID was changed but still get the license notification.

Pinging you also as you mentioned some linux support in your comment :), this seems to no longer work as per my above comment

@otofoto
Copy link

otofoto commented Nov 19, 2025

Goes into endless loop:

`[SC] OpenService FAILED 1060:

The specified service does not exist as an installed service.`

@ROMANOFFCUR
Copy link

@echo off
setlocal enableextensions
title Reset AnyDesk ID

:: 1. Verificar permisos de Administrador
reg query HKEY_USERS\S-1-5-19 >NUL || (
echo Por favor, ejecuta este archivo como Administrador.
pause
exit
)

chcp 437 >NUL

echo Deteniendo AnyDesk...
call :stop_any

echo Realizando copia de seguridad de configuracion de usuario...
:: Borra ID antigua
del /f "%ALLUSERSPROFILE%\AnyDesk\service.conf" 2>NUL
del /f "%APPDATA%\AnyDesk\service.conf" 2>NUL
del /f "%ALLUSERSPROFILE%\AnyDesk\system.conf" 2>NUL
del /f "%APPDATA%\AnyDesk\system.conf" 2>NUL

:: Backup de preferencias y miniaturas
copy /y "%APPDATA%\AnyDesk\user.conf" "%temp%" >NUL 2>NUL
rd /s /q "%temp%\thumbnails" 2>NUL
xcopy /c /e /h /r /y /i /k "%APPDATA%\AnyDesk\thumbnails" "%temp%\thumbnails" >NUL 2>NUL

:: Limpieza de archivos
del /f /a /q "%ALLUSERSPROFILE%\AnyDesk\ad_" 2>NUL
del /f /a /q "%APPDATA%\AnyDesk\ad_
" 2>NUL

echo Reiniciando AnyDesk para generar nueva ID...
call :start_any

:: Espera a que se genere el archivo de sistema con la nueva ID
:lic
timeout /t 2 /nobreak >NUL
if exist "%ALLUSERSPROFILE%\AnyDesk\system.conf" (
type "%ALLUSERSPROFILE%\AnyDesk\system.conf" | find "ad.anynet.id=" >NUL
if !errorlevel! equ 0 goto restore
)
if exist "%APPDATA%\AnyDesk\system.conf" (
type "%APPDATA%\AnyDesk\system.conf" | find "ad.anynet.id=" >NUL
if !errorlevel! equ 0 goto restore
)
:: Si tarda mucho, salimos del bucle para no congelar
goto restore

:restore
echo Restaurando configuracion de usuario...
call :stop_any
move /y "%temp%\user.conf" "%APPDATA%\AnyDesk\user.conf" >NUL 2>NUL
xcopy /c /e /h /r /y /i /k "%temp%\thumbnails" "%APPDATA%\AnyDesk\thumbnails" >NUL 2>NUL
rd /s /q "%temp%\thumbnails" >NUL 2>NUL

echo Iniciando AnyDesk final...
call :start_any
echo *********
echo Completado.
echo(
pause
goto :eof

:: FUNCIONES

:start_any
:: Intenta iniciar servicio (si existe)
sc start AnyDesk >NUL 2>NUL
:: Busca ejecutables comunes
set AnyDesk1=%SystemDrive%\Program Files (x86)\AnyDesk\AnyDesk.exe
set AnyDesk2=%SystemDrive%\Program Files\AnyDesk\AnyDesk.exe
if exist "%AnyDesk1%" start "" "%AnyDesk1%"
if exist "%AnyDesk2%" start "" "%AnyDesk2%"
exit /b

:stop_any
:: Intenta detener servicio (sin bucle infinito)
sc stop AnyDesk >NUL 2>NUL
:: Mata el proceso forzosamente por si es portable
taskkill /f /im "AnyDesk.exe" >NUL 2>NUL
exit /b

@ROMANOFFCUR
Copy link

This file worked for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment