| @echo off |
| ::【双击退出,拖运行】 |
| if "%~1"=="" exit /b 3 |
| 隐藏批处理窗口.exe @ /HID |
| ::【检测“TaskBar”里面,有无 “文件名.lnk” 文件(有向下(退出),无到 :A)】 |
| cd /d "%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\" >nul 2>nul |
| if not exist "%~n1.lnk" goto :A |
| exit |
| ::============================================================================================== |
| :A |
| ::【检测(被拖文件是否.lnk)(是跳到:S,否跳到:T)】 |
| echo %~1 |findstr /rec:".lnk *"&&goto :S||goto :T |
| ::▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆【下面是对(.lnk)的代码】▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆ |
| :S |
| RD /S /Q "%~dp0lnk文件" >nul 2>nul &MD "%~dp0lnk文件\" &xcopy /y %1 "%~dp0lnk文件\" >nul 2>nul |
| ::============================================================================================== |
| ::【获取:lnk指向目标】 |
| >"%tmp%\t.t" echo;WSH.echo CreateObject("WScript.Shell").CreateShortcut(WSH.Arguments(0)).targetpath & for /f "delims=" %%a in ('cscript -nologo -e:vbscript "%tmp%\t.t" "%~1"') do set "lnk指向目标=%%a" |
| set "lnk路径=%~1" |
| ::============================================================================================== |
| ::【添加:在快捷方式的目标最前面,添加 “explorer.exe ”】 |
| >"lnk(含explorer.exe).vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell") |
| >>"lnk(含explorer.exe).vbs" echo strShortcutPath = "%lnk路径%" '快捷方式的路径 |
| >>"lnk(含explorer.exe).vbs" echo Set oShellLink = WshShell.CreateShortcut(strShortcutPath) |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.TargetPath = "%SystemRoot%\explorer.exe" |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.Arguments = "%lnk指向目标%" '文件夹路径 |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.Save '保存 |
| lnk(含explorer.exe).vbs |
| ::============================================================================================== |
| ::【固定在任务栏】 |
| Pecmd.exe PINT "%lnk路径%",TaskBand |
| ::============================================================================================== |
| ::【修改:(TaskBar目录、原来目录)里面的快捷方式为正常】 |
| copy /y "%~dp0lnk文件\*.*" "%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\" |
| copy /y "%~dp0lnk文件\*.lnk" "%~dp1" |
| ::============================================================================================== |
| ::【删除无用文件(文件夹)】 |
| RD /S /Q "%~dp0lnk文件\" & del lnk(含explorer.exe).vbs |
| ::============================================================================================== |
| ::【刷新】 |
| ASSOC .tmp=tmpfile |
| exit |
| ::▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆【下面是对(文件夹 和 文件)的代码】▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆ |
| :T |
| "%~dp0创建快捷方式.exe" /f:"%~dp1%~n1.lnk" /a:c /t:%1 |
| ::============================================================================================== |
| set "lnk路径=%~dp1%~n1.lnk" |
| set "文件夹路径=%~1" |
| ::【添加:在快捷方式的目标最前面,添加 “explorer.exe ”】 |
| >"lnk(含explorer.exe).vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell") |
| >>"lnk(含explorer.exe).vbs" echo strShortcutPath = "%lnk路径%" '快捷方式的路径 |
| >>"lnk(含explorer.exe).vbs" echo Set oShellLink = WshShell.CreateShortcut(strShortcutPath) |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.TargetPath = "%SystemRoot%\explorer.exe" |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.Arguments = "%文件夹路径%" '文件夹路径 |
| >>"lnk(含explorer.exe).vbs" echo oShellLink.Save '保存 |
| lnk(含explorer.exe).vbs |
| ::============================================================================================== |
| ::【固定在任务栏】 |
| Pecmd.exe PINT "%~dp1%~n1.lnk",TaskBand |
| ::【删除无用文件(文件夹)】 |
| del lnk(含explorer.exe).vbs "%~dp1%~n1.lnk" |
| ::【修改:TaskBar里面的快捷方式为正常的 】 |
| "%~dp0创建快捷方式.exe" /f:"%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\%~n1.lnk" /a:c /t:%1 |
| ::【刷新】 |
| ASSOC .tmp=tmpfile |
| exitCOPY |