需求條件:
- 程式執行人需有 domain admins 權限
- 需具備 psexec.exe
- 需具備 regedit.exe
- 需具備 pskill.exe
- 遠端電腦需啟動 remote registry 服務
@echo off
:: 名稱:giti_rm.bat
:: 用途:移除 ERP 應用程式、登錄檔、程式集、桌面捷徑
:: 作成:archer @ 2008/10/27
:: 用法:將 giti_rm.bat 與 giti_rm.reg 放置於 \\\ ,並確定一般使用者可以使用這個資料匣,直接執行即可
:: 備註:測試過的系統 - vista sp1
:: xp sp3
:: 2000 sp4
:: 2000 server sp4
:: 2003 server r2
::以下三個變數需視情況修改
:: 一般使用者的設定檔所在位置
set PROFILE=%SystemDrive%\Documents and Settings
:: All users的設定檔所在位置
set ALLUSERPROFILE=%PROFILE%\All Users
::giti_rm.bat 所在目錄
set WORKDIR=\\192.168.123.5\tmp\gtwin_rm
if exist "%SYSTEMDRIVE%\wingiti" (
::移除 ERP 應用程式
echo Terminating gitiwin.exe
\\192.168.123.5\cmn\pskill.exe gitiwin.exe
echo.
ping -c 3 127.0.0.1>nul
echo Removing DIRs and FILEs
echo "%SYSTEMDRIVE%\wingiti"
rd /s /q "%SYSTEMDRIVE%\wingiti"
echo.
::移除 all users 程式集中的 ERP 功能表
echo Removing %ALLUSERPROFILE%\「開始」功能表\程式集\ERP電腦資訊整合系統
FOR /R "%ALLUSERPROFILE%" %%A in (ERP電腦資訊整合系統) do @if exist %%A echo %%A is removed
FOR /R "%ALLUSERPROFILE%" %%A in (ERP電腦資訊整合系統) do @if exist %%A rd /q /s "%%A"
echo.
::移除所有使用者的遊樂場功能表
echo Removing %PROFILE%\「開始」功能表\程式集\遊樂場
FOR /R "%PROFILE%" %%A in (遊樂場) do @if exist %%A echo %%A is removed
FOR /R "%PROFILE%" %%A in (遊樂場) do @if exist %%A rd /q /s "%%A"
echo.
::移除每個使用者桌面的 ERP更新.bat
echo Removing %PROFILE% ERP更新.bat for each user
FOR /R "%PROFILE%" %%A in (ERP更新.bat) do @if exist %%A echo %%A is removed
FOR /R "%PROFILE%" %%A in (ERP更新.bat) do @if exist %%A del /f "%%A"
echo.
::移除每個使用者桌面的 ERP電腦資訊整合系統.lnk
echo Removing %PROFILE% ERP電腦資訊整合系統.lnk for eath user
FOR /R "%PROFILE%" %%A in (ERP電腦資訊整合系統.lnk) do @if exist %%A echo %%A is removed
FOR /R "%PROFILE%" %%A in (ERP電腦資訊整合系統.lnk) do @if exist %%A del /f "%%A"
echo.
::移除登錄檔中的反安裝及程式資訊
echo Removing related keys/values in registry
regedit /s %WORKDIR%\giti_rm.reg
echo.
echo Remove GITIWIN operation is complete!
ping -n 3 127.0.0.1 > nul
) else ( echo GITIWIN is not exist! Do nothing. )
giti_rm.reg
Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu2\Programs\ERP電腦資訊整合系統]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ERP電腦資訊整合系統_is1]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Management\ARPCache\ERP電腦資訊整合系統_is1]
[-HKEY_USERS\S-1-5-21-1614895754-861567501-725345543-1115\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu2\Programs\ERP電腦資訊整合系統]
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Forms]
"支票"=-
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Forms]
"支票"=-
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Control\Print\Forms]
"支票"=-
步驟:
- 調查 gitiwin 安裝後會產生哪些檔案、哪些登錄檔
- 將找到的登錄檔其父階匯出(key),並在每一個 key 之前加上 - ,標示為欲移除的 key;value
- 將找到的檔案、路徑寫進批次檔,並強制移除
- 以 net view >pc 將網域內所有電腦列出;記得把開頭的 \\ 拿掉
- 其他細節請參考 giti_rm.bat 的註解
- 將附件放置於所有人皆可讀取的共用資料匣,並執行以下指令
psexec @pc \\server\folder\giti_rm\giti_rm.bat