批处理cmd之桌面快捷方式创建工具

 更新时间:2021年10月02日 23:59:46   作者:mdxy  
今天需要将一个便携版的软件配一个桌面快捷方式,发现用批处理做个挺好的,开源也利于大家学习,程序员之家小编特整理成了函数方便调用
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

核心代码如下

@echo off
title 程序员之家 桌面快捷方式创建工具!

>nul 2>&1 REG.exe query "HKU\S-1-5-19" || (
    ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\Getadmin.vbs"
    ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\Getadmin.vbs"
    "%TEMP%\Getadmin.vbs"
    DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul
    Exit /b
)
set jb51name=Ditto3.lnk
set jb51path=%~dp0
set jb51exec=%~dp0Ditto.exe

mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""Desktop"") & ""\%jb51name%""):b.TargetPath=""%jb51exec%"":b.WorkingDirectory=""%jb51path%"":b.Save:close")

参数说明

>nul 2>&1 REG.exe query "HKU\S-1-5-19" || (
    ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\Getadmin.vbs"
    ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\Getadmin.vbs"
    "%TEMP%\Getadmin.vbs"
    DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul
    Exit /b
)

上面这段是管理员权限运行自身

set jb51name=Ditto3.lnk
set jb51path=%~dp0
set jb51exec=%~dp0Ditto.exe

jb51name代表的是快捷方式名称

jb51path是路径

jb51exec是完成的exe文件路径,一般后缀是exe.

另外在bat中%~dp0表示当前目录。

其实就是通过bat为 vbs传参。

路径

效果图如下

今天程序员之家小编也稍微整理了一下知识测试没有问题。

后面大家就可以根据自己的要求修改文件了。

下面为大家分享删除快捷方式的代码

移除桌面快捷方式.bat

@echo off
title 程序员之家 桌面快捷方式移除工具!

>nul 2>&1 REG.exe query "HKU\S-1-5-19" || (
    ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\Getadmin.vbs"
    ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\Getadmin.vbs"
    "%TEMP%\Getadmin.vbs"
    DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul
    Exit /b
)

ping -n 2 127.1>nul
del /f /q "%userprofile%"\Desktop\"Ditto.lnk"
del /f /q "%userprofile%"\桌面\"Ditto.lnk"
exit

到此这篇关于批处理cmd之桌面快捷方式创建工具的文章就介绍到这了,更多相关桌面快捷方式创建工具内容请搜索程序员之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持程序员之家!

相关文章

最新评论

?


http://www.vxiaotou.com