我用IE打开一个页面,页面包含Frame,我想连同Frame里边的内容一并保存,请问该如何编程达到此目的,谢谢!
解决方案 »
- 被调用的dll如何共享主程序中的全局数据
- CListCtrl 在列上单击右键的问题?
- 菜鸟勿入:如果主窗口中有多个子窗口,这些子窗口怎么布局?
- vc2003的vc.net怎么样调用vc6写的DLL,有vc6的DLL,.H,.LIB文件
- 可以在CCmdTarget类中映射窗口消息吗?我看到一个例子中这么做,也看不出作了什么特殊处理,可我做的时候却不成功,请高手指教这是为什么
- 用VC+ADO,出现的记录集添加后访问,问题在添加记录后不能访问到新添加在的记录!!!
- atl组件在IE中,这个组件又create一个窗口,窗口的属性是ws_child 父窗口是IE,但是这个窗口会遮挡住IE滚动条,怎么能让它不遮挡住滚动条
- 关于VB6的安装问题
- 谁能给我讲讲 _T 和 TEXT 的区别?
- 关于可变参数的一个问题
- 请帮我看看,关于句柄传递的问题。解决了,马上结贴!!!!!!
- CFileDialog的问题
首先框架主页xxx.htm,得ihtmldocument2
从ihtmldocument2->get_frames->item->得到frame的ihtmldocuemnt2,然后再保存,以此类推。但可能不是最好的办法.
能否给点示例代码?
比如如何得到ihtmldocument2对象?谢谢!
LPDISPATCH lpDispatch = NULL;
IPersistFile *lpPersistFile = NULL; // m_ctrl is an instance of the Web Browser control
lpDispatch = GetHtmlDocument();
lpDispatch->QueryInterface(IID_IPersistFile, (void**)&lpPersistFile);
IHTMLDocument2 * lpDoc = NULL;
if(lpDispatch->QueryInterface(IID_IHTMLDocument2, (void ** )&lpDoc)==S_OK)
{
IHTMLFramesCollection2 * iframes = NULL;
lpDoc->get_frames(&iframes);
//现在我已经得到了frame的Collection了,请问如何得到frame的document,谢谢!
} lpPersistFile->Save(L"c:\\htmlpage.html",0);
lpPersistFile->Release();
lpDispatch->Release();