![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 20:52 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 请问将一个程序的快捷方式发送到桌面如何写批处理? |
| 可打印版本 1,759 / 9 |
| 第1楼 cnds | 发表于 2008-12-04 10:08 |
| 初级用户 发帖 36 积分 37 | |
|
请问将一个程序的快捷方式发送到桌面如何写批处理? 求大虾帮忙写一个批处理,要求首次进入系统时,删除C:\Documents and Settings\Administrator\桌面\腾讯QQ,然后将:D:\Backup\QQ\QQ.exe的快捷方式发送到桌面上,之后将快捷方式修改成“腾讯QQ”,最后是删除批处理本身。
删除批处理文件本身,用del %0可以做到,但是 del C:\Documents and Settings\Administrator\桌面\腾讯QQ不行,用系统变量也不行,郁闷了。另外将D:\Backup\QQ\QQ.exe的快捷方式发送到桌面,这个就更难了。希望大侠不吝赐教。 [ Last edited by cnds on 2008-12-4 at 10:13 ] |
|
| 第2楼 HAT | 发表于 2008-12-04 11:19 |
| 版主 发帖 5,017 积分 9,023 | |
|
你准备用盗号软件替换QQ么?
|
|
| 第3楼 cnds | 发表于 2008-12-04 11:31 |
| 初级用户 发帖 36 积分 37 | |
|
不是啊。我封装了个系统,QQ用的是YLMF修改过的,但是系统安装完毕之后,用那个快捷方式打开的QQ,一动就死住,没法用。但是用腾讯的QQ.exe发送的快捷方式就没有问题。所以我想做个批处理,加入到GHO中。
|
|
| 第4楼 lianjiang2004 | 发表于 2008-12-04 12:04 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
下面是我以前用过的。可参考
作用:用shortcut.exe把指定目录(d:\ggho)下的gghost.exe在桌面上创建一个“GGhost一键恢复”的快捷键。工作目录为指定的目录。 set ggpath0=d:\ggho %ggpath0%\tools\shortcut.exe /f:"%userprofile%"\桌面\GGhost一键恢复.lnk /a:c /w:%ggpath0%\ /t:%ggpath0%\gghost.exe >nul |
|
| 第5楼 cnds | 发表于 2008-12-04 14:20 |
| 初级用户 发帖 36 积分 37 | |
|
我写了2个批处理a和b,b放到启动里,a放在%windir%里,启动b之后,会去执行a,但是执行完a之后,程序就结束了,按照设计,执行完a之后,应该再跳回到到b,执行剩余的语句。但是,我不知道怎么弄连接回到b,“C:\Documents and Settings\Administrator\「开始」菜单\程序\启动”的系统变量不会搞。达人指点。
a: Sub bat echo off & cls echo create_shortcut start wscript -e:vbs "%~f0" Exit Sub End Sub Set WshShell = WScript.CreateObject("WScript.Shell") strDesktop = WshShell.SpecialFolders("Desktop") set oShellLink = WshShell.CreateShortcut(strDesktop & "\QQ.lnk") oShellLink.TargetPath = "D:\backup\QQ.exe" oShellLink.WindowStyle = 3 oShellLink.Hotkey = "" oShellLink.IconLocation = "D:\backup\QQ.exe, 0" oShellLink.Description = "快捷方式" oShellLink.WorkingDirectory = "D:\backup\QQ.exe" oShellLink.Save b: call %windir%\a.bat del C:\Docume~1\Administrator\桌面\腾讯QQ.lnk ren C:\Docume~1\Administrator\桌面\qq.lnk 腾讯QQ.lnk del %windir%\a.bat del %0 a.bat用于把d:\backup\qq\qq.exe的快捷方式发送桌面,这个功能已经实现。我试图在a.bat中,加入call C:\Docume~1\Administrator\「开始」菜单\程序\启动\b.bat,用于实现执行完a.bat后,跳回到b.bat,但是提示缺少语句。大侠帮忙。 [ Last edited by cnds on 2008-12-4 at 14:23 ] |
|
| 第6楼 cnds | 发表于 2008-12-04 17:53 |
| 初级用户 发帖 36 积分 37 | |
|
用这个批处理就可以了:
code: Sub bat echo off & cls echo create_shortcut start wscript -e:vbs "%~f0" Exit Sub End Sub Set WshShell = WScript.CreateObject("WScript.Shell") strDesktop = WshShell.SpecialFolders("Desktop") set oShellLink = WshShell.CreateShortcut(strDesktop & "\腾讯QQ.lnk") oShellLink.TargetPath = "D:\backup\QQ.exe" oShellLink.WindowStyle = 3 oShellLink.Hotkey = "" oShellLink.IconLocation = "D:\backup\QQ.exe, 0" oShellLink.Description = "快捷方式" oShellLink.WorkingDirectory = "D:\backup\QQ.exe" oShellLink.Save 功能是实现了,但是不知道怎么样删除自身,高手请指教。 [ Last edited by cnds on 2008-12-4 at 17:55 ] |
|
| 第7楼 HAT | 发表于 2008-12-04 17:57 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 6楼 在b里面删a不行么?
|
|
| 第8楼 cnds | 发表于 2008-12-04 20:39 |
| 初级用户 发帖 36 积分 37 | |
|
不可以。运行b.bat之后,执行call %windir%\a.bat,但是执行完a.bat后,程序回不到b.bat来了。
|
|
| 第9楼 wuxj | 发表于 2008-12-04 21:34 |
| 初级用户 发帖 25 积分 50 | |
|
我认为你事先做好快捷方式复制过去会是最简单的方法。
|
|
| 第10楼 cnds | 发表于 2008-12-04 21:38 |
| 初级用户 发帖 36 积分 37 | |
|
建立快捷方式是问题的根源。只要实现这点,其他相对好解决。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |