我自己写了个程序,主要是在QQ聊天室自动发言的,现在已经能够在一个聊天室中自动发言了,请问如何实现在多个聊天室同时发言(已经写好的程序只能是一个聊天室就打开一个程序,占用内存太多了!)?其中主要的是如何实现将刚打开的窗口的句柄存到某个变量中去,并用sendmessage向这多个临时捕捉到窗口发送消息!

解决方案 »

  1.   

    如果用你的方法,只能这么做,得到 聊天室句柄然后sendmessage 
    或者搞明白它的ip包,这样速度就没问题了,但困难很大。
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPrivate Sub Command1_Click()
    Dim lngFrmHwnd As Long    lngFrmHwnd = FindWindow(vbNullString, "QQ聊天室   +你的qq号,注意前面有空格")  '窗口标题
        If lngFrmHwnd > 0 Then
          '你的代码
        End IfEnd Sub
      

  2.   

    我的意思是怎样把所得到的窗口的句柄累加起来?我用下面的程序为何只能加两次?
    If Val(Text1Text) = Curwindow Then  
    'Curwindow 为每次所得到的窗口的句柄
         Text.Text = Curwindow
         Else
          If Val(Text1Text) = 0 Then
             Text1Text = Curwindow
            Else
              Text1Text = Val(Text2.Text) & "-" & Curwindow & "-"
          End If
        End If