用批处理实现禁止运行指定程序

功能:
1.禁止运行指定程序
2.解除禁止指定程序
3.查看全部禁止程序

@echo off
MODE con COLS=40 LINES=18
title 禁止和解除指定程序运行--陈兵 OO:286569692
:begin
setlocal ENABLEDELAYEDEXPANSION
cls
echo.
echo. ╭─────────╮
echo. ╭───┤ 选择如下操作 ├───╮
echo. │ ╰─────────╯ │
echo. │ │
echo. │ A.添加要禁止的程序 │
echo. │ │
echo. │ B.删除已禁止的程序 │
echo. │ │
echo. │ C.查看全部禁止的程序 │
echo. │ │
echo. │ Z.退出程序 │
echo. │ │
echo. ╰─────────────────╯
echo.
copy %systemdrive%WINDOWSjzcx %systemdrive%WINDOWSjzcx.txt>nul
set /p enter= 请你输入你的选择:
if not "%enter%"=="" set enter=%enter:~0,1%
if /i "%enter%"=="A" goto jinzhiadd
if /i "%enter%"=="B" goto jinzhidel
if /i "%enter%"=="C" goto jinzhick
if /i "%enter%"=="Z" goto exit
goto begin
:jinzhiadd
cls
echo.
echo.
echo. 输入要禁止的程序:按 Y 返回菜单
echo.
set /p input=
if /i "%input%"=="Y" goto begin
echo %input%>>%systemdrive%WINDOWSjzcx.txt
reg add "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options%input%" /v debugger /t reg_sz /d debugfile.exe /f
echo.
echo. 成功添加要禁止的程序 %input%
echo.
echo. 任意键,返回其他操作
copy %systemdrive%WINDOWSjzcx.txt %systemdrive%WINDOWSjzcx>nul
pause>nul
goto begin
:jinzhidel
cls
echo.
echo.
echo.
echo.
echo. 全部禁止的程序如下:
echo -------------------------------
echo.
type %systemdrive%WINDOWSjzcx.txt
echo.
echo -------------------------------
echo.
echo. 输入要删除的禁止程序: 按 Y 返回菜单
echo.
set /p jinzhidel=
if /i "%jinzhidel%"=="Y" goto begin
reg delete "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options%jinzhidel%" /f
@for /f "tokens=* delims=" %%i in ('findstr /i /v /c:%jinzhidel% %systemdrive%WINDOWSjzcx.txt') do (
set var=%%i
echo !var!>>temp.txt
)
copy temp.txt %systemdrive%WINDOWSjzcx.txt>nul
del temp.txt
cls
echo.
echo.
echo.
echo.
echo. 操作完成
echo.
echo.
echo. 任意键,返回其他操作
copy %systemdrive%WINDOWSjzcx.txt %systemdrive%WINDOWSjzcx>nul
pause>nul
goto begin
:jinzhick
cls
echo.
echo. 全部禁止的程序如下:
echo --------------------------------
echo.
type %systemdrive%WINDOWSjzcx.txt
echo.
echo --------------------------------
echo.
echo. 任意键返回其他操作
pause>nul
goto begin