中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 05:36
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 我想写一个查询QQ版本号的P 查看 2,105 回复 16
楼 主 我想写一个查询QQ版本号的P 发表于 2007-06-29 14:49 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
我想写一个查询QQ版本号的P
路径:
QQVERPATH=D:\zouzhxi\geqi\qqVersion.ini

version.ini格式如下:


0691=【QQ2007 Beta3】
0675=【QQ2007 Beta2 正式版】
0673=【QQ2007 Beta2 内测版】
04C7=【QQ2006 手机版】
05F9=【QQ2006 贺岁版 sp5】
07D7=【QQ2007 内部版】
0661=【QQ2007 Beta1 Vista】
065F=【QQ2007 Beta1】
063B=【QQ2006】
0639=【QQ2006 泄露版】
0637=【QQ2006 】
062B=【QQ2006 Beta3 SP1】
0627=【QQ2006 Beta3】
0625=【QQ2006 Beta3】
0623=【QQ2006 Beta3】
0621=【QQ2006 Beta2 SP5】
061F=【QQ2006 Beta2 SP3/SP4】
061D=【QQ2006 Beta2 SP2】
061B=【QQ2006 Beta2 SP1】
0611=【QQ2006 Beta2 繁体版】
060F=【QQ2006 Beta2】
060A=【TM2007 Beta1】
0607=【QQ2006 Beta1 SP4】
05FF=【QQ2006 Beta1 SP2】
05FD=【QQ2006 Beta1 sp1】
05FB=【QQ2006 Beta1】
05F7=【QQ2006 贺岁版 sp4】
05F5=【QQ2006 贺岁版 sp3】
05F1=【QQ2006 贺岁版】
05E8=【TM2006 新春版】
05E6=【TM2006 新春版】
05BE=【TM2006 Preview】
05A5=【QQ2005 SP1】
05A1=【QQ2005 英文版】
0569=【QQ2005 Beta2 繁体版】
0597=【QQ2005 繁体版】
0596=【QQ2005 Beta3 海峰版】
0595=【QQ2005 传美正式版/海峰版】
0594=【QQ2005 精灵坊显IP版】
0593=【QQ2005 正式版】
0592=【QQ2005 个人DIY版】
057D=【QQ2005 Beta3 精灵坊显IP版】
057C=【QQ2005 Beta3 精灵坊显IP版 精简版】
0589=【2005 Beta3 苹果版】
0587=【QQ2005 Beta3 传美版】
0585=【QQ2005 Beta3】
0583=【2005 Beta3 世纪英雄版】
0580=【2005 神圣精灵版】
058F=【QQ2005 Beta3 建设银行版】
058B=【QQ2005 Beta3 Patch】
057A=【TM2005 正式版】
057F=【TM 2005 精灵坊显IP版】
057E=【TM 2005 正式版 Patch】
0579=【QQ2005 Beta3 内测版】
0578=【QQ2005 beta3 泄露版】
0575=【QQ2005 Beta3 泄露版】
0567=【QQ2005 Beta2 传美版】
0566=【QQ2005 公安部监控版】
...


现在输入等号前面4位就可以找到对应的QQ版本

[ Last edited by zouzhxi on 2007-6-29 at 04:04 PM ]
2 发表于 2007-06-29 14:54 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
什么意思?是想帮忙写出来吗?
3 发表于 2007-06-29 15:03 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
是的...

因为我用FIND没有弄出来...
4 发表于 2007-06-29 15:13 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
@echo off
set /p a=
for /f "tokens=2 delims==" %%i in ('type 1.txt^|find "%a%"') do echo %%i
pause


试试这个。当然这还不完善,输入不存在的版本,就不正确了。
5 发表于 2007-06-29 15:22 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
try this one :)

@echo off
set QQVERPATH=D:\zouzhxi\geqi\qqVersion.ini
echo Please input your version number:
set /p version=
for /f "tokens=1,* delims==" %%a in ('findstr "%version%" %QQVERPATH%') do (
if "%%a" equ "%version%" echo %%b
)
6 发表于 2007-06-29 15:23 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
路径:
QQVERPATH=D:\zouzhxi\geqi\qqVersion.ini
7 发表于 2007-06-29 15:27 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
出现下面一个很"漂亮"的画面:


'054C' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'054A' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'0548' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'057F' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'0546' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'0520' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'051B' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'051D' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'0519' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'0518' 不是内部或外部命令,也不是可运行的程序
8 发表于 2007-06-29 15:33 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
楼主用哪个测试的?

偶测试两个都没问题
9 发表于 2007-06-29 15:35 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
版本不存在就报错

@echo off
set QQVERPATH=QQVERPATH=D:\zouzhxi\geqi\qqVersion.ini
echo Please input your version number:
set /p version=
for /f "tokens=1,* delims==" %%a in ('findstr "%version%" %QQVERPATH%') do (
if "%%a" equ "%version%" (
set flag=found
echo %%b
goto :EOF
)
)
if not defined %flag% (
echo unknow version :'(
)
10 发表于 2007-06-29 16:12 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
可是有一些是有字母的...怎么处理....
11 发表于 2007-06-29 16:17 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
比较时 if /i 忽略大小写
12 发表于 2007-06-29 16:19 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
//可是有一些是有字母的...怎么处理....

@echo off
set QQVERPATH=QQVERPATH=D:\zouzhxi\geqi\qqVersion.ini
echo Please input your version number:
set /p version=
for /f "tokens=1,* delims==" %%a in ('findstr /i "%version%" %QQVERPATH%') do (
if "%%a" equ "%version%" (
set flag=found
echo %%b
goto :EOF
)
)
if not defined %flag% (
echo unknow version :'(
)
13 发表于 2007-06-29 16:54 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线
不行呀...我也知道加入/I就可以不会大小写..
14 发表于 2007-06-29 16:56 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
无言了。楼主究竟是用那段代码不行啊?
15 发表于 2007-06-29 17:02 ·  IANA 局域网IP(Private-Use)
中级用户
★★
蝴蝶之吻
积分 430
发帖 177
注册 2006-09-20 12:00
19年会员
UID 63170
来自 广东深圳
状态 离线

:SOUSUO
set QQVERPATH="!QQPATH!\!QQ!\Version.ini"
set VER=
CLS
ECHO.
ECHO.你进入了QQ版本查询页面
ECHO.在版本号里输入你要找的版本号(4位)
echo.在版本号里输入 -RE 回到首页
ECHO.
SET /P VER=版本号:
IF /I == GOTO CHOS
echo.
for /f "tokens=1,* delims==" %%a in ('findstr /I "!VER!" "%QQVERPATH%"') do (
if "%%a" equ "!VER!" (
set flag=found
ECHO.┌───────┬──────────
ECHO.│你查询的版本号│!VER!
ECHO.├───────┴─┬────────
echo.│与它对应的版本名称│%%b
ECHO.└─────────┴────────
pause&GOTO sousuo
)
)
if not defined %flag% (
echo unknow version :'(
)
goto sousuo


我也是这样写的...我输入05FF就可以查询...而输入05ff却返回到了:SOUSUO标签,不会执行查询....

[ Last edited by zouzhxi on 2007-6-29 at 05:03 PM ]
论坛跳转: