知识屋:更实用的电脑技术知识网站
所在位置:首页 > QQ专区 > 技术汇总

通过FindWindowEx来获取当前运行着的QQ号码列表

发布时间:2014-09-30 16:27:53作者:知识屋

以下为封好的 Delphi 类
type
   TGetQQNumber = class
qqlist: TStrings;
   private
procedure GetList(ClassName:String);
   public
constructor Create();
destructor Destroy(); override;
end;


constructor TGetQQNumber.Create;
begin
   qqlist := TStringList.Create;
//   Afx:61790000:2 为窗口类名
   GetList(Afx:61790000:2);//QQ2006 STD
   GetList(Afx:61800000:2);//QQ2007 Beta3
   GetList(Afx:61810000:2);//按规律随意添加的,不知道对不对
   GetList(Afx:61820000:2);//按规律随意添加的,不知道对不对
   GetList(Afx:61830000:2);//按规律随意添加的,不知道对不对
   GetList(Afx:61840000:2);//QQ2007 Beta4
end;

destructor TGetQQNumber.Destroy;
begin
   qqlist.Free;
end;

procedure TGetQQNumber.GetList(ClassName: String);
var
   Wnd: DWord;
   Buf: array[0..255] of char;
   i: integer;
begin
   Wnd := 0;
   repeat
Wnd := FindWindowEx(0, Wnd, pchar(ClassName), nil);
GetWindowText(Wnd, Buf, 255);
if buf <> then
begin
   for i := 0 to 255 do
   begin
       if Buf[i] = _ then
       begin
      Buf[i] := #0;
      break;
       end;
   end;
   qqlist.Add(buf);
end;
   until (Wnd = 0);
end;

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜