标题: [原创]QQzone便捷察看器~以之促学,兴之所在!
[打印本页]
作者: lifenjoiner
时间: 2008-12-4 00:04
标题: [原创]QQzone便捷察看器~以之促学,兴之所在!
鉴于一些原因
~
------
ClearQzone.bat@setlocal enabledelayedexpansion
@set /a n=0
@set /p ulist=输入你导出的好友列表文件名 [默认friends.txt]:=
@if "%ulist%"=="" set ulist=friends.txt
@for /f "usebackq delims=: tokens=2" %%i in (`findstr "消息对象" %ulist%`) do @(
set /a n+=1
set uname!n!=%%i
)
@set /a nn=%n%
@set /a n=0
@for /f "usebackq tokens=2" %%p in (`findstr "用户号码" %ulist%`) do @(
set /a n+=1
set unumb!n!=%%p
)
@if not %nn%==0 @(
if exist qzone.hta (del /s qzone.hta)
echo 共有好友%nn%人
echo ^<html^>>qzone.hta
echo ^<head^>>>qzone.hta
echo ^<title^>QQzone快速打开^</title^>>>qzone.hta
echo ^</head^>>>qzone.hta
echo ^<body^>>>qzone.hta
echo http://^<input id="numb"^>^<button onclick="window.open('http://'+numb.value+'.qzone.qq.com','_blank')"^>.qzone.qq.com^</button^>>>qzone.hta
echo ^<hr^>>>qzone.hta
for /l %%x in (1,1,!nn!) do @(
echo ^<br^>^<input value="!unumb%%x!" onclick="numb.value=this.value"^>-!uname%%x!>>qzone.hta
)
echo ^</body^>>>qzone.hta
echo ^</html^>>>qzone.hta
echo 更新成功
)
@pause
使用方法:
1.QQ好友管理导出好友列表
2.同一文件夹内运行本脚本
3.生成qzone.hta即是
------
用途:
1.不引发qzone.exe进程
2.不登陆即可看qzone
3.你不会出现在对方的最近浏览里
=======
希望改进。把findstr用好。
=========
进化:
20081205:
1." if exist qzone.hta (del /s qzone.hta)"行须删除
2.采用HAT建议用@echo off
ClearQzone(@).bat@echo off
setlocal enabledelayedexpansion
set /a n=0
set /p ulist=输入你导出的好友列表文件名 [默认friends.txt]:=
if "%ulist%"=="" set ulist=friends.txt
for /f "usebackq delims=: tokens=2" %%i in (`findstr "消息对象" %ulist%`) do (
set /a n+=1
set uname!n!=%%i
)
set /a nn=%n%
set /a n=0
for /f "usebackq tokens=2" %%p in (`findstr "用户号码" %ulist%`) do (
set /a n+=1
set unumb!n!=%%p
)
if not %nn%==0 (
echo 共有好友%nn%人
echo ^<html^>>qzone.hta
echo ^<head^>>>qzone.hta
echo ^<title^>QQzone快速打开^</title^>>>qzone.hta
echo ^</head^>>>qzone.hta
echo ^<body^>>>qzone.hta
echo ^http://^<input id="numb"^>^<button onclick="window.open('http://'+numb.value+'.qzone.qq.com','_blank')"^>.qzone.qq.com^</button^>>>qzone.hta
echo ^<hr^>>>qzone.hta
for /l %%x in (1,1,!nn!) do (
echo ^<br^>^<input value="!unumb%%x!" onclick="numb.value=this.value"^>-!uname%%x!>>qzone.hta
)
echo ^</body^>>>qzone.hta
echo ^</html^>>>qzone.hta
echo 更新成功
)
pause
20081207:
考虑以上方法设置变量太多,减少临时变量
感谢论坛里朋友帮我解决了findstr两个中文字符串不匹配的问题
ClearQzone(@set).bat@echo off
setlocal enabledelayedexpansion
set /a n=0
set /a flg=0
set /p ulist=输入导出的好友列表文件名[如:friends.txt]:=
if "%ulist%"=="" set ulist=friends.txt
echo ^<html^>>qzone.hta
echo ^<head^>>>qzone.hta
echo ^<title^>QQzone快速打开^</title^>>>qzone.hta
echo ^</head^>>>qzone.hta
echo ^<body^>>>qzone.hta
echo http://^<input id="numb"^>^<button onclick="window.open('http://'+numb.value+'.qzone.qq.com','_blank')"^>.qzone.qq.com^</button^>>>qzone.hta
echo ^<hr^>>>qzone.hta
for /f "usebackq delims=" %%i in (`findstr /r "消息对象 用户号码" %ulist%`) do (
set tempstr=%%i
set ustr=!tempstr:~5!
if !flg!==0 (
set /a flg+=1
set codestr=!codestr! onclick="numb.value=this.value"^>-!ustr!
) else (
set /a flg-=1
set /a n+=1
set codestr=^<br^>^<input value="!ustr!"!codestr!
echo !codestr!>>qzone.hta
set codestr=
)
)
echo ^</body^>>>qzone.hta
echo ^</html^>>>qzone.hta
echo 更新成功
echo 共有好友%n%人
pause
[
Last edited by lifenjoiner on 2008-12-7 at 13:23 ]
作者: HAT
时间: 2008-12-4 09:52
感谢分享。
建议在第一行加上@echo off
把其它的@全部删除
作者: lifenjoiner
时间: 2008-12-4 21:43
谢啦。那是调试的遗留。