|
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
状态 离线
|
|
2007-6-12 16:14 |
|
|
trickster
初级用户
积分 63
发帖 33
注册 2006-12-4
状态 离线
|
『第
3 楼』:
我知道这段代码网上到处是,但我要的是怎么样用批处理生成VBS文件
|
|
2007-6-12 16:27 |
|
|
wudixin96
银牌会员
积分 1928
发帖 931
注册 2007-1-6
状态 离线
|
|
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
状态 离线
|
|
2007-6-12 17:32 |
|