Created
September 15, 2024 08:57
-
-
Save adasjusk/f49f1d9582ec1c9fa839105d6584a9b3 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@REM Made By TheAdas | |
@echo off | |
@REM Set variables for coloured text | |
SETLOCAL EnableDelayedExpansion | |
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do ( | |
set "DEL=%%a" | |
) | |
echo OneDrive Uninstaller | |
echo. | |
NET SESSION >nul 2>&1 | |
IF %ERRORLEVEL% EQU 0 ( | |
echo. | |
) ELSE ( | |
echo. | |
call :colorEcho 0C "########### ERROR - ADMINISTRATOR PRIVILEGES REQUIRED #############" | |
echo. | |
call :colorEcho 0C "# #" | |
echo. | |
call :colorEcho 0C "#" | |
call :colorEcho 07 " This script must be run as administrator to work properly." | |
call :colorEcho 0C " #" | |
echo. | |
call :colorEcho 0C "#" | |
call :colorEcho 07 " If you're seeing this after double clicking on the icon," | |
call :colorEcho 0C " #" | |
echo. | |
call :colorEcho 0C "#" | |
call :colorEcho 07 " then right click on the icon and select 'Run As Administrator'" | |
call :colorEcho 0C " #" | |
echo. | |
call :colorEcho 0C "# #" | |
echo. | |
call :colorEcho 0C "###################################################################" | |
echo. | |
echo. | |
PAUSE | |
EXIT /B 1 | |
) | |
echo ----------------------------------------------- | |
call :colorEcho 0C " WARNING" | |
echo. | |
call :colorEcho 0C " This script will completely and permanently" | |
echo. | |
call :colorEcho 0C " remove OneDrive from your computer." | |
echo. | |
call :colorEcho 0C " Make sure all OneDrive documents" | |
echo. | |
call :colorEcho 0C " that are stored locally are fully" | |
echo. | |
call :colorEcho 0C " backed up before proceeding." | |
echo. | |
echo ----------------------------------------------- | |
echo. | |
SET /P M= Press 'Y' to continue or any other key to exit. | |
if %M% ==Y goto PROCESSKILL | |
if %M% ==y goto PROCESSKILL | |
EXIT /B 1 | |
@rem Terminate any OneDrive process | |
:PROCESSKILL | |
echo. | |
echo Terminating OneDrive process. | |
taskkill /f /im OneDrive.exe | |
@rem Detect if OS is 32 or 64 bit | |
reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" | find /i "x86" > NUL && set OS=32BIT || set OS=64BIT | |
if %OS%==32BIT GOTO 32BIT | |
if %OS%==64BIT GOTO 64BIT | |
@rem Uninstall OneDrive app | |
:32BIT | |
echo. | |
echo This is a 32-bit operating system. | |
echo Removing OneDrive setup files. | |
%SystemRoot%\System32\OneDriveSetup.exe /uninstall | |
GOTO CLEAN | |
:64BIT | |
echo. | |
echo This is a 64-bit operating system. | |
echo Removing OneDrive setup files. | |
%SystemRoot%\SysWOW64\OneDriveSetup.exe /uninstall | |
GOTO CLEAN | |
@rem Clean and remove OneDrive remnants | |
:CLEAN | |
echo. | |
echo Removing remaining OneDrive folders. | |
rd "%UserProfile%\OneDrive" /s /q | |
rd "%LocalAppData%\Microsoft\OneDrive" /s /q | |
rd "%ProgramData%\Microsoft OneDrive" /s /q | |
rd "C:\OneDriveTemp" /s /q | |
del "%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" /s /f /q | |
echo. | |
call :colorEcho 0C "If you see 'access denied' errors here, reboot and run this batch file again." | |
echo. | |
echo. | |
echo 'The system cannot find the file specified.' errors are ok, it means the files are already gone. | |
echo. | |
@rem Delete and remove OneDrive in file explorer folder tree registry key | |
echo ----------------------------------------------- | |
echo. | |
echo Removing OneDrive registry keys. | |
REG Delete "HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f | |
REG Delete "HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f | |
REG ADD "HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /v System.IsPinnedToNameSpaceTree /d "0" /t REG_DWORD /f | |
echo. | |
echo. | |
echo 'The system was unable to find the specified registry key or value.' errors are ok, | |
echo it means the Registry entries already don't exist. | |
echo. | |
echo ----------------------------------------------- | |
echo. | |
echo OneDrive Uninstall and cleaning completed. | |
echo. | |
PAUSE | |
PING -n 2 127.0.0.1>nul | |
EXIT /B 1 | |
@rem Settings for text colour | |
:colorEcho | |
echo off | |
<nul set /p ".=%DEL%" > "%~2" | |
findstr /v /a:%1 /R "^$" "%~2" nul | |
del "%~2" > nul 2>&1i |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment