TWebBrowser的IPersistFile.Save,如何得知它已保存完成﹖

Frank6600 2009-12-02 12:33:11
TWebBrowser的IPersistFile.Load,我利用以下代码来确保它载入完成﹖

IPersistFile.Load(filename);
while not IHtmlDocument2.readystate='complete' do
forms.applications.processmessage;

那么,IPersistFile.Save() 呢﹖如何确保它保存完成﹖

用 IPersistFile.SaveComplete(filename)?
还是其他的方式﹖

...全文
281 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Frank6600 2009-12-07
  • 打赏
  • 举报
回复
顺带说一下,iseekcode 老兄你对问题的回答真是颇合我意啊!

似乎你我对 TWebBrowser 研究的角度差不多(当然我的理解要落后你许多),
很感谢你最近对我的问题的解析与说明,
对我助益良多,谢谢。
Frank6600 2009-12-07
  • 打赏
  • 举报
回复
> Save是一个短暂的过程,不是持续状态,所以不需要"持续关心它的状态".

good!
iseekcode 2009-12-06
  • 打赏
  • 举报
回复
IPersistFile.SaveComplete是在IPersistFile.Save之后调用的,而且总是返回S_OK.所以不能用它来SAVE.它的作用是告诉IPersistFile:保存已经完成,是否成功看IPersistFile.Save的返回值,不成功的话,怎么办你自个儿看着办.
IPersistFile.Save似乎跟线程没有关系,如果保存不成功,会返回S_FALSE.我的理解是,Save是一个短暂的过程,不是持续状态,所以不需要"持续关心它的状态".
Frank6600 2009-12-04
  • 打赏
  • 举报
回复
呃﹖

IPersistFile.Save() 不是多线程(Threads)的﹖
这个问题不值得讨论吗﹖
Frank6600 2009-12-03
  • 打赏
  • 举报
回复
> 好像完成后会返回S_OK,如果有错误会报S_FALSE

这么说,IPersistFile.Save() 不是多线程(Threads)的﹖
不必像 IPersistFile.Load() 一样持续关心它的状态﹖
gyk120 2009-12-02
  • 打赏
  • 举报
回复
好像完成后会返回S_OK,如果有错误会报S_FALSE

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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