hur.cn - 华软网

 热门搜索

shellexecute的使用问题

  作者:未知    来源:网络    更新时间:2011/7/29
shellexecute怎么打开多个IE标签
ShellExecute(this->GetSafeHwnd(), "open",m_bigLobeUrl, NULL, NULL,SW_SHOWNORMAL); 
ShellExecute(this->GetSafeHwnd(),"open",m_okWaveUrl,NULL,NULL,SW_SHOWNORMAL);
以上代码在有IE8启动的时候会在打开的IE上增加2个新的标签,如果没有IE启动的时候只会启动一个新的IE,但新启动的IE上只有一个标签:okWaveUrl对应的网址,bigLobeUrl对应的网址没显示。
怎么在没有IE打开的时候启动一个新的IE,并将2个网址都显示出来。
---华软 网友回答---
ShellExecute(...);
Sleep(1000);
ShellExecute(...);
---华软网友回复---
引用 1 楼 feilongjilei 的回复:
ShellExecute(...);
Sleep(1000);
ShellExecute(...);

Sleep() 用了,但延迟时间,速度太慢了,还有没有其他更好的办法?
---华软网友回复---
我也不知道调用第二个ShellExecute的时候怎么保证浏览器已经成功启动了,我一般是用Sleep的,期待高手
---华软网友回复---
 我觉得ShellExecute做不到,找找IE的接口吧
---华软网友回复---
C++">
ShellExecute(...);
Sleep(1000);
ShellExecute(...); 


不如试试ShellExecuteEx + WaitForSingleObject
---华软网友回复---
C++">ShellExecute(this->GetSafeHwnd(), "open","C:\Program Files\Internet Explorer\IEXPLORE.EXE www.163.com", NULL, NULL,SW_SHOWNORMAL);  

---华软网友回复---
sleep()
---华软网友回复---
sleep()的方法不好,如果是网速慢或者电脑卡一下,Sleep时间一过,IE没启动,还是找不到。
WaitForSingleObject 方法也不行,ShellExecute只要执行就有返回值。
---华软网友回复---
自己解决了,Nagavite方法      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。