批处理自动登录QQ小结及相关讨论
程序员文章站
2022-05-14 23:53:45
转载自 葬祭在骷髅最终编辑 lj_suntb原理及使用方法: 代码: start "" "c:\program files\tencent\qq\qq.exe" /star...
转载自 葬祭在骷髅最终编辑 lj_suntb原理及使用方法: 代码:
start "" "c:\program files\tencent\qq\qq.exe" /start qquin:843875648 pwdhash:4z1c1a8denof9j+jhhrnrw== /stat:40引用:
10:上线登陆
40:隐身登陆
41:上线登陆
qquin和pwdhash必须使用大写字母
原理:qq在传输密码的时候,先做一次md5加密,再做一次base64变换,这样可以得到正常的文本信息以便网络传输。找一个md5在线查询的网站(比如http://www.xmd5.org/),输入qq密码的明文,转换得到md5加密的结果,再找一个base64在线查询的网站(比如http://www.waishi.net/ip/tools/base64.htm),输入刚才得到的md5加密的结果,转换得到hash编码即可。
使用vbs的sendkeys方法自动登录,因无法保证获取正确的交单,存在风险,因此不予考虑。经测试,目前无法用这个方法登陆最新的qq2009正式版,可能是新版的qq未开启这个命令行接口吧,只能继续期待以后的版本了。
自动获取qq路径的几种方法:读注册表、全盘搜索、获取进程信息等: 代码:
@echo off
rem 使用wmic获取进程信息中的qq路径
for /f "tokens=2 delims==" %%a in ('wmic process where "name='qq.exe'" get executablepath /value') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
@echo off
rem 使用wmic全盘搜索获取qq路径
for /f "skip=1 delims=" %%a in ('wmic datafile where "filename='qq' and extension='exe'" get name') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
@echo off
rem 使用reg命令读注册表获取qq路径
for /f "tokens=2*" %%a in ('reg query hkey_local_machine\software\tencent\qq /v install^|findstr "install"') do (
set qqpath=%%b
)
echo %qqpath%
pause代码:
@echo off
rem 使用reg export命令到处注册表项再搜索获取qq路径以避免reg query可能存在的吃中文字符的问题
reg export "hkey_local_machine\software\tencent\qq" "%temp%\qq.txt">nul
for /f "tokens=2 delims==" %%a in ('type "%temp%\qq.txt"^|findstr /i "install"') do (
rem 可以用 %%~fa 直接把字符串中的\\变成\
set qqpath=%%~a
)
set qqpath=%qqpath:\\=\%
echo %qqpath%
pause代码:
@echo off
rem 调用vbs读注册表获取qq路径
>"%temp%\my.vbs" echo set wshshell = wscript.createobject("wscript.shell")
>>"%temp%\my.vbs" echo wscript.echo wshshell.regread("hkey_local_machine\software\tencent\qq\install")
for /f "delims=" %%a in ('cscript /nologo "%temp%\my.vbs"') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
@echo off
rem 全盘搜索获取qq路径
set fname=qq.exe
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
if exist %%a:\nul (
pushd %%a:\
for /r %%b in (%fname%?) do (
if /i "%%~nxb" equ "%fname%" (
set fpath=%%b
goto :show
)
)
popd
)
)
:show
echo %fpath%
pause
start "" "c:\program files\tencent\qq\qq.exe" /start qquin:843875648 pwdhash:4z1c1a8denof9j+jhhrnrw== /stat:40引用:
10:上线登陆
40:隐身登陆
41:上线登陆
qquin和pwdhash必须使用大写字母
原理:qq在传输密码的时候,先做一次md5加密,再做一次base64变换,这样可以得到正常的文本信息以便网络传输。找一个md5在线查询的网站(比如http://www.xmd5.org/),输入qq密码的明文,转换得到md5加密的结果,再找一个base64在线查询的网站(比如http://www.waishi.net/ip/tools/base64.htm),输入刚才得到的md5加密的结果,转换得到hash编码即可。
使用vbs的sendkeys方法自动登录,因无法保证获取正确的交单,存在风险,因此不予考虑。经测试,目前无法用这个方法登陆最新的qq2009正式版,可能是新版的qq未开启这个命令行接口吧,只能继续期待以后的版本了。
自动获取qq路径的几种方法:读注册表、全盘搜索、获取进程信息等: 代码:
复制代码 代码如下:
@echo off
rem 使用wmic获取进程信息中的qq路径
for /f "tokens=2 delims==" %%a in ('wmic process where "name='qq.exe'" get executablepath /value') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
复制代码 代码如下:
@echo off
rem 使用wmic全盘搜索获取qq路径
for /f "skip=1 delims=" %%a in ('wmic datafile where "filename='qq' and extension='exe'" get name') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
复制代码 代码如下:
@echo off
rem 使用reg命令读注册表获取qq路径
for /f "tokens=2*" %%a in ('reg query hkey_local_machine\software\tencent\qq /v install^|findstr "install"') do (
set qqpath=%%b
)
echo %qqpath%
pause代码:
复制代码 代码如下:
@echo off
rem 使用reg export命令到处注册表项再搜索获取qq路径以避免reg query可能存在的吃中文字符的问题
reg export "hkey_local_machine\software\tencent\qq" "%temp%\qq.txt">nul
for /f "tokens=2 delims==" %%a in ('type "%temp%\qq.txt"^|findstr /i "install"') do (
rem 可以用 %%~fa 直接把字符串中的\\变成\
set qqpath=%%~a
)
set qqpath=%qqpath:\\=\%
echo %qqpath%
pause代码:
复制代码 代码如下:
@echo off
rem 调用vbs读注册表获取qq路径
>"%temp%\my.vbs" echo set wshshell = wscript.createobject("wscript.shell")
>>"%temp%\my.vbs" echo wscript.echo wshshell.regread("hkey_local_machine\software\tencent\qq\install")
for /f "delims=" %%a in ('cscript /nologo "%temp%\my.vbs"') do (
set qqpath=%%a
)
echo %qqpath%
pause代码:
复制代码 代码如下:
@echo off
rem 全盘搜索获取qq路径
set fname=qq.exe
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
if exist %%a:\nul (
pushd %%a:\
for /r %%b in (%fname%?) do (
if /i "%%~nxb" equ "%fname%" (
set fpath=%%b
goto :show
)
)
popd
)
)
:show
echo %fpath%
pause
上一篇: python版微信跳一跳游戏辅助
下一篇: Oscdimg 命令行选项使用