吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 15983|回复: 50
收起左侧

[C&C++ 转载] 获取当前qq号

  [复制链接]
JoyChou 发表于 2014-2-15 00:31
本帖最后由 JoyChou 于 2014-2-15 00:32 编辑

首先申明:无意分析qq木马的时候看到的。没技术含量。大牛勿喷。

作者:JoyChou
博客:http://joychou.sinaapp.com



1. 通过类名

1.1 通过qqexchangewnd_shortcut_prefix_123456789类名

得到qqexchangewnd_shortcut_prefix_123456789这样的字符串
123456789就是正在登录的qq的号
如果同时登录几个QQ,只能获取最晚登录的q号
[C++] 纯文本查看 复制代码
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <windows.h>
// 得到qqexchangewnd_shortcut_prefix_123456789这样的字符串
// 123456789就是正在登录的qq的号
// 如果同时登录几个QQ,只能获取最晚登录的q号
int main(void)
{   
    HWND hwnd = FindWindow("5B3838F5-0C81-46D9-A4C0-6EA28CA3E942", NULL);
    if (hwnd != NULL)
    {
        char szText[MAX_PATH] = {0};
        char szQQNumber[MAX_PATH] = {0};
        // 得到qqexchangewnd_shortcut_prefix_123456789这样的字符串
        GetWindowText(hwnd, szText, MAX_PATH);
        // 分割字符串,得到qq号
        int len = strlen(szText);
        do 
        {
            len--;
        } while (szText[len] != '_');
        strcpy(szQQNumber, &szText[len+1]);
        printf("%s\n", szText);
        printf("%s\n", szQQNumber);
        getchar();
    }
}




1.2 通过CTXOPConntion_Class类名

[C++] 纯文本查看 复制代码
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <windows.h>
int main(void)
{   
    char szText[MAX_PATH] = {0};
    char szQQNumber[MAX_PATH] = {0};
    HWND hWnd = FindWindowA("CTXOPConntion_Class", NULL);
    // 得到类似OP_12345678的字符串
    if (hWnd)
    {
        GetWindowText(hWnd, szText, MAX_PATH);
    }
    // 得到12345678 qq号
    int len = strlen(szText);
    do 
    {
        len--;
    } while (szText[len] != '_');
    strcpy(szQQNumber, &szText[len+1]);
    printf("%s\n", szText);
    printf("%s\n", szQQNumber);
    return 0;
    getchar();
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

seemk 发表于 2015-5-6 11:03
本帖最后由 seemk 于 2015-5-6 11:06 编辑

谢谢提供思路,稍作修改即可获取所有QQ号:
[C++] 纯文本查看 复制代码
#include <stdio.h>
#include <string.h>
#include <windows.h>
int main(void)
{   
    char szText[MAX_PATH] = "CTXOPConntion_Class";
    char szQQNumber[MAX_PATH] = {0};
    HWND hWnd = FindWindow(szText, NULL);
    while (hWnd)
    {
                if(strcmp(szText,"CTXOPConntion_Class")==0)
                {
                        GetWindowText(hWnd, szText, MAX_PATH);
                        int len = strlen(szText);
                        do
                        {
                                len--;
                        } while (szText[len] != '_');
                        strcpy(szQQNumber, &szText[len+1]);
                        printf("%s\n", szQQNumber);
                }
                hWnd=GetWindow(hWnd,GW_HWNDNEXT);
                GetClassName(hWnd,szText,MAX_PATH);
    }
    
        getchar();
    return 0;
}

但是有一个问题不太明白,我用xuetr可以查看到QQ进程下有5B3838F5-0C81-46D9-A4C0-6EA28CA3E942这个窗口类,却看不到CTXOPConntion_Class这个类,不过用FindWindow还能找到它,这是为什么?被hook了看不到?
JiHyo 发表于 2014-3-19 21:41



不会问是FW函数的用法。
没用过QQ,不知道 5B3838F5-0C81-46D9-A4C0-6EA28CA3E942 这是?

谢谢回复。
1354669803 发表于 2014-2-15 00:33
吾爱-路人甲 发表于 2014-2-15 09:14
不错。学习了
ingdear 发表于 2014-2-15 09:18
不错,我试下。
wanghui2249 发表于 2014-2-15 09:34

不错,非常好
莫谷 发表于 2014-2-15 09:57
那请问这个能用在网页上吗?
byximen 发表于 2014-2-15 10:05
有没现成的php 之类源码
 楼主| JoyChou 发表于 2014-2-15 13:03
byximen 发表于 2014-2-15 10:05
有没现成的php 之类源码

应该有,不过我不知道。
莫谷 发表于 2014-2-17 11:24
期待网站上能用啊。这个很有效果的
cancoder 发表于 2014-2-22 23:42
的确能用,谢谢!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 08:18

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表