如何枚举任务条上的窗口?

cqjiang 2002-07-21 12:24:32
如何枚举任务条上的窗口?
...全文
40 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2002-07-21
  • 打赏
  • 举报
回复
HOWTO: Connect to a Running Instance of Internet Explorer

Q176792


--------------------------------------------------------------------------------
The information in this article applies to:

Microsoft Internet Explorer (Programming) versions 4.0, 4.01, 5
Microsoft Internet Client SDK, versions 4.0, 4.01
In C++, a connection can be accomplished in roughly the same way. Visual C++ Native Com Support is used here for the sake of brevity.

Add references to Shdocvw.dll and Mshtml.dll to the project:

#import <mshtml.dll> // Internet Explorer 4.0x
#import <mshtml.tlb> // Internet Explorer 5
#import <shdocvw.dll>
Declare an instance of an IShellWindows pointer in your view class:

SHDocVw::IShellWindowsPtr m_spSHWinds;
Create an instance of a ShellWindows object in your view's constructor:

m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows));
Use the ShellWindows object in your view's OnInitialUpdate function:

void CConnectIEView::OnInitialUpdate()
{
CFormView::OnInitialUpdate();

ASSERT(m_spSHWinds != NULL);

CString strCount;
long nCount = m_spSHWinds->GetCount();

strCount.Format("%i", nCount);
m_strWinCount = strCount;

UpdateData(FALSE);

IDispatchPtr spDisp;
for (long i = 0; i < nCount; i++)
{
_variant_t va(i, VT_I4);
spDisp = m_spSHWinds->Item(va);

SHDocVw::IWebBrowser2Ptr spBrowser(spDisp);
if (spBrowser != NULL)
{
m_ctlListLoc.AddString(spBrowser->GetLocationName());

MSHTML::IHTMLDocument2Ptr spDoc(spBrowser->GetDocument());
if (spDoc != NULL)
{
m_ctlListTitle.AddString(spDoc->Gettitle());
}
}
}
}
daehappy 2002-07-21
  • 打赏
  • 举报
回复
up!gz!
JerryGR 2002-07-21
  • 打赏
  • 举报
回复
记得给分
JerryGR 2002-07-21
  • 打赏
  • 举报
回复
有两种方法:
1.EnumWindows,这个代码简单,但我这里的代码没有了,你到网络上找找吧
2.GetWindow和GetNextWindow一起使用,可以枚举所有窗口!见MSDN就可以了,代码很简单的!


lqbn 2002-07-21
  • 打赏
  • 举报
回复
关注,谁有源代码?
chenybin 2002-07-21
  • 打赏
  • 举报
回复
UP一下先
playguy 2002-07-21
  • 打赏
  • 举报
回复
利用EnumWindows函数,可以列出所有窗口,然后根据一定的条件判断即可。欢迎访问小弟的网站:
http://playguy.onchina.net

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧