我写了个BHO,打开某个网业时 调用dll 
extern "C" __declspec(dllexport) void ShowDlg(char *mch) {
         dlldlg->Create(IDD_RDIALOG,NULL);
dlldlg->ShowWindow(SW_SHOWNORMAL);
}
生成对话框,挂在特定的IE上面,因为会从IE里面去内容执行对话框程序的操作,但这样在对话框的处理中会影响IE打开的速度,听说多线程可以解决这个问题。使加载的对话框和IE操作完全独立开来。请各位兄台提供解决思路和具体实现方法,不胜感激。

解决方案 »

  1.   

    其实我是在给IE加载了个HOOK,从IE提取指定内容到对话框进行处理,(需要部分时间),处理结束后再显示返回结果,我的意思是在hook获得数据后提交给dialog 后,IE不必dialog返回结果,可以继续做自己的事情,大家帮忙看下,该如何实现??
      

  2.   

    那就创建一个界面线程,对话框的显示和数据处理都在里面完成。
    CDialogThread* pDialogThread = new CDialogThread();
    pDialogThread ->CreateThread();
      

  3.   

    楼上的能否给个界面线程的详细例子,CDialogThread的初始化和定义 我的创建dialog是在dll中实现的
    extern "C" __declspec(dllexport) void ShowDlg(char *mch) {
        //登陆的操作员信息
        CDialogThread *pDialogThread = new CRDialog();
        pDialogThread ->CreateThread();
    }
    这样做好象缺乏初始变量,请看下