如何把Twebbrowser中的内容保存到文件? 我要保存的是图片用rang.execCommand('Copy',False,0); image1.Picture.Assign(ClipBoard);也不能解决 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用emb的webbrowser,好像有savetofile EmbWebBrowser控件,delphi7可以装 EmbWebBrowser虽然是不错,不过仅仅为保存网页要用它没必要了,几行代码就可以做到的事情http://blog.csdn.net/sunstone/article/details/4788743 EmbWebBrowser试过了,不行哦,只能保存HTML文件,不能保存图片文件 直接用idhttp下载下来,urldowntofile下载不来说明服务器做了限制 //{ 真正获取WebBrowser源码,返回的是原始格式代码,区别于innerHTML }function GetHtml(const Document2: IHTMLDocument2): string;const BufSize = $10000;var Size: Int64; Stream: IStream; hHTMLText: HGLOBAL; psi: IPersistStreamInit;begin if not Assigned(Document2) then Exit; OleCheck(Document2.QueryInterface (IPersistStreamInit, psi)); try //OleCheck(psi.GetSizeMax(Size)); hHTMLText := GlobalAlloc(GPTR, BufSize); if 0 = hHTMLText then SysUtils.RaiseLastWin32Error; OleCheck(CreateStreamOnHGlobal(hHTMLText, True, Stream)); try OleCheck(psi.Save(Stream, False)); Size := StrLen(PChar(hHTMLText)); SetLength(Result, Size); CopyMemory(PChar(Result), Pointer(hHTMLText), Size); finally Stream := nil; end; finally psi := nil; end;end;//调用按钮事件procedure TForm1.ButtonViewSourcClick(Sender: TObject);begin Memo1.Text := GetHtml(WebBrowser1.Document as IHTMLDocument2);end;可以在OnDocumentComplete事件中判断WebBrowser1中的内容加载完毕,就可以用调用GetHtml函数进行显示,Memo1.Text赋值后,保存为文件直接Memo1.Lines.SaveToFile()就可以了。 我想获取的是验证码的图片。urldowntofile在7。0版的IE中可以下载,很郁闷。 字符串存储的是16进制小数怎么转为10进制小数 用SQL语句向Access中保存和提取图片 分销商管理软件 救命啊!谁用过MapX? 初学delphi程序运行出错请有经验的大哥帮忙 我要有序的显示我的五张图片!在线等!高分求助!!! 如何用QReport来做报表? RPC服务器不可用 Delphi的枚举类型是怎么用的?如果它的元素是字符串,怎样判断它和某个字符串相等? 关于用delphi开发数据库的问题 跪求 delphi ex5 开发 android的资料 想学XE5,特别是移动开发,但相关资料太少了
http://blog.csdn.net/sunstone/article/details/4788743
//{ 真正获取WebBrowser源码,返回的是原始格式代码,区别于innerHTML }
function GetHtml(const Document2: IHTMLDocument2): string;
const
BufSize = $10000;
var
Size: Int64;
Stream: IStream;
hHTMLText: HGLOBAL;
psi: IPersistStreamInit;
begin
if not Assigned(Document2) then Exit; OleCheck(Document2.QueryInterface
(IPersistStreamInit, psi));
try
//OleCheck(psi.GetSizeMax(Size));
hHTMLText := GlobalAlloc(GPTR, BufSize);
if 0 = hHTMLText then SysUtils.RaiseLastWin32Error; OleCheck(CreateStreamOnHGlobal(hHTMLText,
True, Stream));
try
OleCheck(psi.Save(Stream, False)); Size := StrLen(PChar(hHTMLText));
SetLength(Result, Size);
CopyMemory(PChar(Result), Pointer(hHTMLText),
Size);
finally
Stream := nil;
end;
finally
psi := nil;
end;
end;//调用按钮事件
procedure TForm1.ButtonViewSourcClick(Sender: TObject);
begin
Memo1.Text := GetHtml(WebBrowser1.Document as IHTMLDocument2);
end;可以在OnDocumentComplete事件中判断WebBrowser1中的内容加载完毕,就可以用调用GetHtml函数进行显示,
Memo1.Text赋值后,保存为文件直接Memo1.Lines.SaveToFile()就可以了。