VC 如何获取多个IE浏览器中 当前的用户正在浏览的WebBrowser2指针

我用以下办法获取到WebBrowser2指针,可是在多个当中,不知道哪个是当前用户正在操作的,请问有什么办法?
CComPtr< IShellWindows > spShellWin;
HRESULT hr = spShellWin.CoCreateInstance( CLSID_ShellWindows );
if ( FAILED( hr ) ) return;
long nCount=0;
spShellWin->get_Count(&nCount);

for(long i=0; i {
CComPtr spDisp;
hr=spShellWin->Item(CComVariant( i ), &spDisp );
if ( FAILED( hr ) ) continue;
CComQIPtr< IWebBrowser2 > spBrowser = spDisp;
if ( !spBrowser ) continue;

第1个回答  2014-08-15
首先你的程序和IE是不同的进程,即便获取了指针,在你的进程中也是无效的。所以,如果要实现你的需求,那么就首先需要进程植入,然后再进行获取操作。
估计可以通过获取相关的窗口,然后来获取指针。这个我没有尝试过,只是提一个思路了。希望能对你有帮助。追问

指针是有效的

第2个回答  2014-10-14
HWND hIE = FindWindow(_T("IEFrame"), NULL);
WCHAR str[256];
::GetWindowText(hIE, str, 256);

这个方法就能找到

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网