查找IE窗口里的submit按钮,模拟点击
来源:互联网 发布:西门子s7300仿真软件 编辑:程序博客网 时间:2024/05/20 12:24
the following code will click submit button of html page in IE, modify it to click other button.
///////////////////////////////////////////////////////////////////////////////////////
//click submit button of IE window
//If it works, it is written by masterz,otherwise I don't
//know who writes it^_^
///////////////////////////////////////////////////////////////////////////////////////
void CGetIESrcDlg::NavigateToUrl()
{
// Import the following files in your stdafx.h
// #import <mshtml.tlb> // Internet Explorer 5
// #import <shdocvw.dll>
// Refer to "Connect to Internet Explorer Instances, From your own Process. " in SHDocVw::IShellWindowsPtr m_spSHWinds;
CoInitialize(NULL);
if(m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows)) == S_OK)
{
IDispatchPtr spDisp;
long nCount = m_spSHWinds->GetCount();
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)
{
IDispatchPtr spDisp;
if(spBrowser->get_Document(&spDisp) == S_OK && spDisp!= 0 )
{
MSHTML::IHTMLDocument2Ptr spHtmlDocument(spDisp);
MSHTML::IHTMLElementPtr spHtmlElement;
if(spHtmlDocument==NULL)
continue;
spHtmlDocument->get_body(&spHtmlElement);
if(spHtmlDocument==NULL)
continue;
HRESULT hr;
MSHTML::IHTMLElementCollection* pColl=NULL;
hr=spHtmlDocument->get_all(&pColl);
if(pColl!=NULL&&SUCCEEDED(hr))
{
MSHTML::IHTMLElement* pElem=NULL;
_variant_t index;
index.vt=VT_I4;
index.intVal=0;
_variant_t name("Submit");
IDispatchPtr disp;
disp=pColl->item(name,index);
if(disp==NULL)
hr=E_FAIL;
else
{
hr=disp->QueryInterface(&pElem);
}
if (SUCCEEDED(hr)&& pElem != NULL)
{
//
BSTR bstrhtml;
pElem->get_outerHTML(&bstrhtml);
CString str(bstrhtml);
AfxMessageBox(str);
pElem->click();
pElem->Release();
}
pColl->Release();
}
}
}
}
}
else {
AfxMessageBox("Shell Windows interface is not avilable");
}
CoUninitialize();
}
- 查找IE窗口里的submit按钮,模拟点击
- 利用 SHDocVw::IShellWindowsPtr m_spSHWinds 遍历所有IE浏览器,得到里面的所有元素 还有一个是查找IE窗口里的submit按钮,模拟点击
- IE下按回车自动触发input type=submit的按钮点击事件
- 解决qt里点击子窗口的按钮没有反应
- 模拟对另一进程的窗口按钮的点击
- [Code Collection] 模拟点击另一窗口的按钮
- C#调用迅雷的时候 自动模拟点击”下载按钮” 关闭弹出窗口
- 表单里只能点击一次的按钮
- 点击按钮弹出包含表单的窗口
- android中模拟对话框按钮的点击
- ANdroid 模拟自动的点击按钮
- 模拟鼠标点击按钮的简单示例
- 用代码,模拟按钮的点击
- 模拟IE弹出窗口
- 模拟点击网页按钮
- WPF模拟点击按钮
- DuiLib : 执行按钮事件, 模拟按钮的点击
- 从一个窗口获取另一个窗口点击的按钮
- Flex中的元数据标签
- MyEclipse统一修改编码
- Exception 自定义
- (oracle)dual
- java基础教程-多线程编程
- 查找IE窗口里的submit按钮,模拟点击
- C#_把dataTable数据导出到CSV,XLS文件
- Petit FatFS在51单片机上的移植
- 我的第一篇博客
- 30
- libavformat/libavcodec 学习
- (转载)C++的一些要点
- 什么是杯具。。。。
- 《代码大全2》读书笔记