公司要我写一个监控qq的程序,让那些上班时间玩qq的,留下日志,我的代码如下:
var
   fHWnd:HWnd;
begin
     fHWnd := FindWindow(nil,PChar('QQ2004'));
     
     if fHWnd<>0 then
         记录登录时间
     
现在的问题是,好像我跟据窗口的标题名称要本监控不到,没有起到作用,监控登录窗口也不行
(fHWnd := FindWindow(nil,PChar('QQ用户登录'));)
不知哪位高人有什么好的办法,下午要交货了!

解决方案 »

  1.   

    QQ2004这样不成吧?如果人家用QQ2003你怎么办??
      

  2.   

    查找进程里面有没有QQ。EXE和TM。EXE.
      

  3.   

    csdn上有不少关与进程的。
    我觉的用查找进程的方法比较好,因为不管你是QQ的什么版本,在进程里它都是QQ.EXE或是TM.EXE
      

  4.   

    procedure TForm1.Button4Click(Sender: TObject);
    var
    hMutex:HWND;
    Ret:Integer;
    begin
      hMutex := CreateMutex(Nil, False, 'TM');
      Ret := GetLastError;
      if Ret = Error_already_exists  then
      begin
        MessageBox(Application.Handle, '已经有一个程序在本机运行!', '提示', MB_OK OR MB_ICONWARNING);
        ReleaseMutex(hMutex) ;
      end;
    end;
    end.
      

  5.   

    这个是从CSDN上找的。在此谢谢提供者。
      在MessageBox(Application.Handle, '已经有一个程序在本机运行!', '提示', MB_OK OR MB_ICONWARNING);
    可以加你想加的东西。