好像在组件中不能用findwindow,只好用枚举进程,但是得到进程后我不知道如何才能向进程对应窗口发送自定义消息???

解决方案 »

  1.   

    要注意的地方:
    FindWindow内部SendMessageTimeout,去查询窗口的caption
    此时FindWindow 只等待一秒钟,如果你的窗口程序非常繁忙或被挂起,FindWindow可能会失败正常情况下,FindWindow是在COM里使用没问题的
    我们曾经通过SQL触发器调用COM(COM内部FindWindow)都是没问题的
      

  2.   

    1、FindWindow需要注意窗口标题,窗口标题有可能改变。
       FindWindow只能查找顶层窗口。
    2、可以考虑EnumWindows,涉及函数不少,记不太清楚了。
       你可以查查MSDN,搜索EnumWindows,最下面的链接“Window Functions”里有你想要的东西。
      

  3.   

    HWND hwnd ;
    hwnd = FindWindow(NULL,_T("tester")) ;

    if(hwnd)
    PostMessage(hwnd,WM_COMM,0,0) ;
    else
    {
    m_piResponse->Write(_variant_t(L"error!<br>")) ;
    }请问这样写有问题吗?在窗口中用是没有问题的。
    这个组件是供asp调用的