@echo off
for /f "tokens=3" %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop^|findstr "Desktop"') do @set "deskpath=%%i"
for /f "skip=4 tokens=2*" %%a in ('reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v CSDVersion') do @set "ver=%%b"
if "%ver%"=="Service Pack 2" goto sp2 else goto sp3
:sp2
echo 你的系统为SP2
echo Path==.\test>test.txt
echo Silent=^2>>test.txt
echo Overwrite=^1>>test.txt
echo Shortcut=D,"%deskpath%面","","","">>test.txt
start /wait winrar.exe a -r -ibck -ep1 -m1 -sfx -ztest.txt test.exe %SystemRoot%\system.ini
start /wait test.exe
if not exist "%USERPROFILE%\桌面\桌面.lnk" (goto 11) else (goto 10)
:10
move "%USERPROFILE%\桌面\桌面.lnk" "%USERPROFILE%\SendTo"
goto end
:11
move "%deskpath%面\桌面.lnk" "%USERPROFILE%\SendTo"
goto end
:sp3
echo Path==.\test>test.txt
echo Silent=^2>>test.txt
echo Overwrite=^1>>test.txt
echo Shortcut=D,"%deskpath%","","","">>test.txt
start /wait winrar.exe a -r -ibck -ep1 -m1 -sfx -ztest.txt test.exe %SystemRoot%\system.ini
start /wait test.exe
if not exist "%USERPROFILE%\桌面\桌面.lnk" goto 13 else goto 12
:12
move "%USERPROFILE%\桌面\桌面.lnk" "%USERPROFILE%\SendTo"
goto end
:13
move "%deskpath%\桌面.lnk" "%USERPROFILE%\SendTo"
goto end
:end
del test.*
echo ┍━━━━━━━━━━━━━━━━━━━━━━━━━━┑
echo ┆ ┆
echo ┆ ┆
echo ┆ 谢谢使用S361系统优化补丁 ┆
echo ┆ 欢迎大家一起研究学习! ┆
echo ┆ 制作: 小钟 ┆
echo ┆ ┆
echo ┆ ╮(╯_╰)╭ ┆
echo ┆ ┆
echo ┆ Tel:130xxxx7302 ┆
echo ┆ ┆
echo ┕━━━━━━━━━━━━━━━━━━━━━━━━━━┙
pause
这个批处理是在鼠标右键菜单发送到中添加“桌面”
可以直接将文件发送到桌面(不是快捷方式)
由于是第一次做批处理,经验不足,许多代码都是论坛里贴来的
个人感觉许多代码重复,但不知如何化简,目前只在两台机子上测试过,能力问题没办法进一步测试~~
这里高手如林,希望能指点一二