中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 下面这个代码放在其他的批处理文件中怎么老报错
作者:
标题: 下面这个代码放在其他的批处理文件中怎么老报错 上一主题 | 下一主题
59fei
初级用户





积分 60
发帖 23
注册 2007-7-5
状态 离线
『楼 主』:  下面这个代码放在其他的批处理文件中怎么老报错

下面这个代码放在其他的批处理文件中怎么老报错
cd.>tmp.vbs
for /f "usebackq skip=4 tokens=*" %%a in (%0) do @echo %%a>>tmp.vbs
tmp.vbs&del tmp.vbs /q
goto :eof

Rem 以下为VbScript脚本
Set WshShell = WScript.CreateObject("WScript.Shell")
strDesktop = WshShell.SpecialFolders("Desktop") :'特殊文件夹“桌面”

Rem 在桌面创建一个记事本快捷方式
set oShellLink = WshShell.CreateShortcut(strDesktop & "\记事本.lnk")
oShellLink.TargetPath = "notepad.exe" : '目标
oShellLink.WindowStyle = 3 :'参数1默认窗口激活,参数3最大化激活,参数7最小化
oShellLink.Hotkey = "Ctrl+Alt+e" : '快捷键
oShellLink.IconLocation = "notepad.exe, 0" : '图标
oShellLink.Description = "记事本快捷方式" : '备注
oShellLink.WorkingDirectory = strDesktop : '起始位置
oShellLink.Save : '创建保存快捷方式

Rem 在桌面创建一个“微软中国”的Url快捷方式
set oUrlLink = WshShell.CreateShortcut(strDesktop & "\微软中国.url")
oUrlLink.TargetPath = "http://www.microsoft.com/china"
oUrlLink.Save



龙飞电脑网络 中国厨房设备联盟 www.59fei.com
www.chufangshebei.com
2007-7-9 14:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 2 楼』:  

先问一下你自己明白不明白这个批处理是做什么用的?



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2007-7-9 14:31
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复
59fei
初级用户





积分 60
发帖 23
注册 2007-7-5
状态 离线
『第 3 楼』:  

不是很明白

是生成一个vbs临时文件 然后运行vbs文件
在桌面上面生成两个快捷方式



龙飞电脑网络 中国厨房设备联盟 www.59fei.com
www.chufangshebei.com
2007-7-9 14:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
59fei
初级用户





积分 60
发帖 23
注册 2007-7-5
状态 离线
『第 4 楼』:  

for /f "usebackq skip=4 tokens=*" %%a in (%0) do @echo %%a>>tmp.vbs
tmp.vbs&del tmp.vbs /q
这个不明白



龙飞电脑网络 中国厨房设备联盟 www.59fei.com
www.chufangshebei.com
2007-7-9 14:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 5 楼』:  

既然for命令中使用了%0,那么要求你在调用这个批处理时一定要输入批处理的全名,或者在资源管理器中直接双击执行批处理。

其它的,你自己看for命令或者其它命令的帮助。

其实for命令就是将当前运行的批处理从第5行开始的内容输出到tmp.vbs中,然后后面的命令就是运行这个vbs然后再删除这个临时的vbs。



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2007-7-9 15:04
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: