中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 用批处理生成VBS文件遇到了问题,高手帮忙
作者:
标题: 用批处理生成VBS文件遇到了问题,高手帮忙 上一主题 | 下一主题
trickster
初级用户




积分 63
发帖 33
注册 2006-12-4
状态 离线
『楼 主』:  用批处理生成VBS文件遇到了问题,高手帮忙

在产生下面这段代码时遇到了问题:

ON ERROR RESUME NEXT
Dim VOL_PROD_KEY
if Wscript.arguments.count<1 then
VOL_PROD_KEY=InputBox("Powered By metang.blogbus.com"&vbCr&vbCr&" 本程序将自动替换你当前 Windows 的序列号,通过微软验证完全正版。"&vbCr&vbCr&"序列号(OEM版无效,默认版本为 XP VLK):","Windows XP序列号自动更换器","CM3HY-26VYW-6JRYC-X66GX-JVY2D")
if VOL_PROD_KEY="" then

刚开始我是在每行前加ECHO 结尾加>>CDKEY.VBS,但生成的"cdkey.vbs文件却不正确,由于我对VBS脚本不懂,特请高手帮忙,谢谢

2007-6-12 16:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 2 楼』:  

这个脚本,网上到处都是。

2007-6-12 16:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
trickster
初级用户




积分 63
发帖 33
注册 2006-12-4
状态 离线
『第 3 楼』:  

我知道这段代码网上到处是,但我要的是怎么样用批处理生成VBS文件

2007-6-12 16:27
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 4 楼』:  

把你P代码贴上来。

2007-6-12 16:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  


@echo off
echo ON ERROR RESUME NEXT>cdkey.vbs
echo Dim VOL_PROD_KEY>>cdkey.vbs
echo if Wscript.arguments.count^<1 then>>cdkey.vbs
echo VOL_PROD_KEY=InputBox("Powered By metang.blogbus.com"^&vbCr^&vbCr^&" 本程序将自动替换你当前 Windows 的序列号,通过微软验证完全正版。"^&vbCr^&vbCr^&"序列号(OEM版无效,默认版本为 XP VLK):","Windows XP序列号自动更换器","CM3HY-26VYW-6JRYC-X66GX-JVY2D")>>cdkey.vbs
echo if VOL_PROD_KEY="" then>>cdkey.vbs


2007-6-12 16:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
trickster
初级用户




积分 63
发帖 33
注册 2006-12-4
状态 离线
『第 6 楼』:  

下面是应该生成的VBS脚本的完整代码,我是在先将下面代码每行前加ECHO  结尾处加>>cdkey.vbs 保存为bat文件,但运行后生成的cdkey.vbs跟下面代码不符,问题主要出在有IF语句的行,,但由于我不懂VBS脚本,所以始终处理不好,还请帮帮忙,谢了

ON ERROR RESUME NEXT
Dim VOL_PROD_KEY
if Wscript.arguments.count<1 then
VOL_PROD_KEY=InputBox("Powered By metang.blogbus.com"&vbCr&vbCr&" 本程序将自动替换你当前 Windows 的序列号,通过微软验证完全正版。"&vbCr&vbCr&"序列号(OEM版无效,默认版本为 XP VLK):","Windows XP序列号自动更换器","CM3HY-26VYW-6JRYC-X66GX-JVY2D")
if VOL_PROD_KEY="" then
Wscript.quit
end if
else
VOL_PROD_KEY = Wscript.arguments.Item(0)
end if
VOL_PROD_KEY = Replace(VOL_PROD_KEY,"-","") 'remove hyphens if any
for each Obj in GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf ("win32_WindowsProductActivation")
result = Obj.SetProductKey (VOL_PROD_KEY)
if err = 0 then
Wscript.echo "OK!去微软验证吧!"
end if
if err <> 0 then
Wscript.echo "替换失败!输入的 CD-KEY 与当前的版本不匹配。"
Err.Clear
end if
Next

2007-6-12 16:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
trickster
初级用户




积分 63
发帖 33
注册 2006-12-4
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by HAT at 2007-6-12 04:44 PM:
[code]
@echo off
echo ON ERROR RESUME NEXT>cdkey.vbs
echo Dim VOL_PROD_KEY>>cdkey.vbs
echo if Wscript.arguments.count^<1 then>>cdkey.vbs
echo VOL_PROD_KEY=InputBox("Powe ...

请问最后的NEXT怎么生成?

2007-6-12 17:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 8 楼』:  


@echo off
echo ON ERROR RESUME NEXT>>2.vbs
echo Dim VOL_PROD_KEY>>2.vbs
echo if Wscript.arguments.count^<1 then>>2.vbs
echo VOL_PROD_KEY=InputBox("Powered By metang.blogbus.com"^&vbCr^&vbCr^&" 本程

序将自动替换你当前 Windows 的序列号,通过微软验证完全正版。"^&vbCr^&vbCr^&"序列

号(OEM版无效,默认版本为 XP VLK):","Windows XP序列号自动更换器","CM3HY-26VYW-

6JRYC-X66GX-JVY2D")>>2.vbs
echo if VOL_PROD_KEY="" then>>2.vbs
echo Wscript.quit>>2.vbs
echo end if>>2.vbs
echo else>>2.vbs
echo VOL_PROD_KEY = Wscript.arguments.Item(0)>>2.vbs
echo end if>>2.vbs
echo VOL_PROD_KEY = Replace(VOL_PROD_KEY,"-","") 'remove hyphens if any>>2.vbs
echo for each Obj in GetObject("winmgmts:

{impersonationLevel=impersonate}").InstancesOf

("win32_WindowsProductActivation")>>2.vbs
echo result = Obj.SetProductKey (VOL_PROD_KEY)>>2.vbs
echo if err = 0 then>>2.vbs
echo Wscript.echo "OK!去微软验证吧!">>2.vbs
echo end if>>2.vbs
echo if err ^<^> 0 then>>2.vbs
echo Wscript.echo "替换失败!输入的 CD-KEY 与当前的版本不匹配。">>2.vbs
echo Err.Clear>>2.vbs
echo end if>>2.vbs
echo Next>>2.vbs


2007-6-12 17:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Vampire
初级用户





积分 176
发帖 78
注册 2007-4-15
状态 离线
『第 9 楼』:  

ECHO 写脚本时得注意一些符号的问题,最保险的办法就是将涉及符号的地方都加^以使之不被生成脚本的批处理识别,反正批处理不会将首个^整到生成文件里的(两个^^连起来就别说了哈)。

2007-6-12 17:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
trickster
初级用户




积分 63
发帖 33
注册 2006-12-4
状态 离线
『第 10 楼』:  

谢谢各位,已解决

2007-6-12 17:32
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: