标题: [已解决]如何用脚本生成此bat
[打印本页]
作者: tireless
时间: 2007-10-9 12:27
标题: [已解决]如何用脚本生成此bat
目录下有个Seting.ini,内容是
[859749548]
号码=
859749548
版本=腾讯原版
路径=
d:\program files\深度 deepqq\QQ.exe
登录方式=正常
MIN=
b3Do41/sjBI4fOUhlpwbcQ==
我要生成一个批处理,内容是(注:■表示此处为空格)
start■
d:\“program files”\"深度 deepqq”\QQ.exe■/START■QQUIN:
859749548■PWDHASH:
b3Do41/sjBI4fOUhlpwbcQ==■/STAT:41
批处理的内容随着Seting.ini的改变而变(有颜色的是会变的):
1.路径名称如有空格,要用双引号括起来(或者全加引号好像也行)
2.生成的bat以号码命名
[
Last edited by tireless on 2007-10-8 at 09:36 PM ]
作者: HAT
时间: 2007-10-9 13:10
可以通过注册表来获取QQ的安装路径,个人觉得这样更具有移植性。
@echo off
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\Tencent\QQ /v Install') do (
set QQPathL=%%a
set QQPathR=%%b
)
set QQPath=%QQPathL:~-1%:%QQPathR%
cd %QQPath%
start qq.exe /start QQUIN:843875648 PWDHASH:4Z1c1a8DeNoF9j+JHHRnrw== /stat:10
作者: tireless
时间: 2007-10-9 13:53
Quote: |
Originally posted by HAT at 2007-10-8 05:10 PM:
可以通过注册表来获取QQ的安装路径,个人觉得这样更具有移植性。
|
|
不需要,就按照Seting.ini里面路径就可以。
生成的bat是随着Seting.ini的改变而变,有颜色的就是会变的。
另外你的执行不了
作者: wudixin96
时间: 2007-10-9 13:54
@echo off
cd.>一键启动.bat
for /f "eol=[ tokens=1* delims==" %%a in (Seting.ini) do (
if "%%a"=="号码" set hm=%%b&&set fl=0
set /a fl+=1
if "%%a"=="路径" set lj=%%b
if /i "%%a"=="min" set min=%%b
setlocal enabledelayedexpansion
if !fl! equ 5 call :th
endlocal
)
pause
goto :eof
:th
set lj=%lj: =/%
set lj=%lj:\= %
for %%i in (%lj%) do (
set str=%%i
set ljstr=%%i
set /a num+=1
call set str=%%str:/= %%
if not "!str!"=="!ljstr!" set str="!str!"
call set str%%num%%=%%str%%
)
set str=
for /l %%i in (1,1,%num%) do (
call set str=%%str%%\%%str%%i%%
)
echo start %str:~1% /START QQUIN:%hm% PWDHASH:%min% /STAT:41>>一键启动.bat
[
Last edited by wudixin96 on 2007-10-9 at 04:06 PM ]
作者: tireless
时间: 2007-10-9 14:17
标题: 回复 4# 的帖子
呵呵,不慢不慢。两三秒根本感觉不到,眨下眼就到了。
成功了,谢谢!
另外,如果Seting.ini的内容有N个
[859749548]
号码=859749548
版本=腾讯原版
路径=d:\program files\深度 deepqq\QQ.exe
登录方式=正常
MIN=b3Do41/sjBI4fOUhlpwbcQ==
[75323557]
号码=75323557
版本=腾讯原版
路径=d:\program files\深度 deepqq\QQ.exe
登录方式=正常
MIN=vtBheCm9JLe6jrBtxmEQUg==
...
生成的BAT是:
start d:\"program files"\"深度 deepqq"\QQ.exe /START QQUIN:859749548 PWDHASH:b3Do41/sjBI4fOUhlpwbcQ== /STAT:41
start d:\"program files"\"深度 deepqq"\QQ.exe /START QQUIN:75323557 PWDHASH:vtBheCm9JLe6jrBtxmEQUg== /STAT:41
...
这个批处理要怎么写呢?
作者: wudixin96
时间: 2007-10-9 14:26
差不多的,就在第一个for里加一两句就行了。
但效率不行的,还是建议修改一下
不提高效率的话,文本内容越多所耗得时间就是翻倍的。
作者: wudixin96
时间: 2007-10-9 14:46
改进过了,效率高了一点。
作者: tireless
时间: 2007-10-9 15:02
有个问题,不会加引号了
可以生成N个以号码命名的BAT了,能不能只生成一个啊,就像我上面说的
(简单点可以用copy *.bat 一键启动.bat,但怎么复制它自己)
[
Last edited by tireless on 2007-10-8 at 07:13 PM ]
作者: wudixin96
时间: 2007-10-9 15:10
引号有的啊,你再复制试试???
作者: tireless
时间: 2007-10-9 15:24
刚才试没有。现在有了。
试了下Seting.ini如果有N个,可以生成11111.bat、22222.bat、859749548.bat。要怎么只生成一个呢?用copy?
[859749548]
号码=859749548
版本=腾讯原版
路径=D:\Program Files\深度 DEEPQQ\LiteIM.exe
登录方式=正常
MIN=b3Do41/sjBI4fOUhlpwbcQ==
[859749548]
号码=22222
版本=腾讯原版
路径=D:\Program Files\Maxthon2\Maxthon.exe
登录方式=正常
MIN=b3Do41/sjBI4fOUhlpwbcQ==
[859749548]
号码=11111
版本=腾讯原版
路径=D:\Program Files\Maxthon2\Maxthon.exe
登录方式=正常
MIN=b3Do41/sjBI4fOUhlpwbcQ==
作者: wudixin96
时间: 2007-10-9 15:25
就是全部写入同一个bat文件里??
而不是根据QQ号码来命令bat文件,是吗??
作者: tireless
时间: 2007-10-9 15:30
恩 命名其实无所谓,就命名为一键启动.bat就可以了
作者: wudixin96
时间: 2007-10-9 16:04
现在似乎可以了,原来那个有个很大的bug。
会重复call好几个,速度就更慢了。
作者: tireless
时间: 2007-10-9 16:26
幸苦了。可以用。