关于用Twebbrowser做浏览器出的问题!(20分)

  • 主题发起人 主题发起人 fullstrong
  • 开始时间 开始时间
F

fullstrong

Unregistered / Unconfirmed
GUEST, unregistred user!
近日我在TwebBrowser控件建立一个浏览器,遇到以下问题:

1。当我用以下语句进行打印页内容时,出现打印对话框,我选择取消打印,则出现“试图激活未注册的丢弃目标!”不知是何原因?
ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);

2。在用以下语句保存页内容时,如何才能够不出现保存对话框?
 ExecWB(OLECMDID_SAVEAS,OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);
 
急!快,帮者加分!
 
继续。。。
 
奇怪,没人会吗,解答者加200分!!
 
我想不是没人会,DFW里面做过浏览器的有很多,不知为什么竟然没人理你这个问题,这些
高手们也太不热心了吧。
 
因为这些不是容易的问题啊,哈哈!
关注!!!
 

2.
今天看到的,試驗"成功"

但無法存成 .mht ,有人可以改進的嗎?


procedure TForm1.Button2Click(Sender: TObject);
var
HTMLDocument: IHTMLDocument2;
PersistFile: IPersistFile;
begin
HTMLDocument := web1.Document as IHTMLDocument2;

while HTMLDocument.readyState <> 'complete' do
Application.ProcessMessages; {wait download complete}

PersistFile := HTMLDocument as IPersistFile;
PersistFile.Save(StringToOleStr('c:/tmp/klaus.htm'), system.True);

end;

 
我也正在准备研究有关IE编程的问题,你的问题一方面出在ole初始化方面,还有应加入判断!

至于其它的,建议你到http://eagleboost.myrice.com/去看看

另外http://www.euromind.com/iedelphi/会有极大的收货,你的所有问题都可迎刃而解的
 
你的问题解决了吗,我也想知道,我想保存到指定的位置,51357用过吗?它里面有个默认保存路径,
不知道怎么实现的。
>>2。在用以下语句保存页内容时,如何才能够不出现保存对话框?
>>  ExecWB(OLECMDID_SAVEAS,OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);
 
1. try
ExecWB(OLECMDID_SAVEAS,OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);
except
end;

在主窗口最后一个end.之前加上

initialization
OleInitialize(nil);
finitialization
try
OleUninitialize;
except
end;

 
我刚要讲,前面的kthy老兄就抢先一步了。
 
1.
用try
except
end;
截获错误即可
2.
ExecWB(OLECMDID,OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);
方法的第二个参数有以下几个:
OLECMDEXECOPT_DODEFAULT 默认方式有提示框的
OLECMDEXECOPT_PROMPTUSER 总是提示
OLECMDEXECOPT_DONTPROMPTUSER 没有提示框
OLECMDEXECOPT_SHOWHELP 显示帮助
 
1
用try
except
end;
截获错误即可
2
ExecWB(OLECMDID, OLECMDEXECOPT_DODEFAULT, EmptyParam,EmptyParam);
的第二个参数有以下几个:
OLECMDEXECOPT_DODEFAULT 缺省设置(有框)
OLECMDEXECOPT_PROMPTUSER 总是提示
OLECMDEXECOPT_DONTPROMPTUSER 从不提示
OLECMDEXECOPT_SHOWHELP 显示帮助
 
另外,在可以dock的window中,一旦dock-->变成flat时会出问题的。:(
 
目前只有一个方法,就是直接分析网页并自己保存。
用BASE64类似的编码,分析组成文件,并保存。
MHT实际上是一个OUTLOOK express的邮件,使用MIME格式编码。
 
那有MHT的编码规范?
 
我已经添加了
initialization
OleInitialize(nil);
finalization
try
OleUninitialize;
except
end;
可是运行提示[Error] Unit1.pas(179): Illegal character in input file: '¡¡' ($A1A1)
这是怎么回事啊?
 
呵呵!用IOleCommandTarget。
var
LOleCommandTarget:IOleCommandTarget;
begin
LOleCommandTarget:=WebBrowser.Document as IOleCommandTarget;
IOleCommandTarget.Exec(@GCMD_MSHTML,IDM_SaveAs,0,EmptyParam,EmptyParam);
end;
 

Similar threads

I
回复
0
查看
455
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部