描述:
dll自弹带webbrowser控件的对话框。
想让一个dll在别的dll来loadlibrary的时候自动弹出对话框。我在dll的初始话函数InitInstance里来显示这个带webbrowser控件的对话框,但是调试跟踪时到navigate的时候就死掉了,也不报错,就执行不下去了。。。而去掉navigate却完全可以。
而且如果我用一个导出函数来显示对话框,用一个测试exe来调用这个函数,却是一切正常的。只是我把显示函数加到InitInstance里就不行。。
chtmlview也用过,都是一样的问题
希望有高手能解决。。谢谢
或者提供一些方法,
解决方案1:
启动一定时器就好了
::SetTimer(NULL, NULL, 100, (TIMERPROC)_TimerProc);
// 定时器回调函数
void CALLBACK _TimerProc(HWND hWnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
{
::KillTimer(NULL, idEvent);
//Show your dialog blow
}
初始化后启动一个线程,Sleep一会儿,再显示对话框可以吗?
嘿嘿。
创建一个线程,等InitInstance结束一段时间后执行。
解决方案4:You should not load another DLL( with is loaded by webbrowser control) in InitInstance