Automation Object的问题(200分)

  • 主题发起人 主题发起人 kindly
  • 开始时间 开始时间
K

kindly

Unregistered / Unconfirmed
GUEST, unregistred user!
我写了一个自动化服务器,开始是写在dll中的,后来写在一个exe里面,如果程序调用了
我的对象,exe自动启动,但是调用完成以后,程序就退出了,有没有什么办法能让他不
退出?就像flashget一样?

还有一个问题:我在IE的右键菜单里加了个菜单项调用我的对象,很简单,就是返回网页
的代码,已经成功了,我是在一个dll里面作的,我想把获得的Document接口发给主程序,
用了sendmessage(findwindow(...),WM_DOC,Integer(doc),0) 失败:(
但是我试了一下,在form上放一个TWebBrowser,同样的方式就可以获得接口,这是为什
么呢?

分数无所谓,大家讨论一下:)
 
(1)可以的
用户的财务软件就实现了
客户端退出后服务器端,过一段时间如果没有客户登陆才退出
如有就不退出,
 
我也知道时可以的,但怎么样才能让他不退出呢?我在调用中加了一句_AddRef,就不会退出了,
但这时候如果要关闭程序的话,就会弹出一个警告对话框,当然我想避免这个
 
把COM计数置为零就不会出这个警告了,,
 
to :枫
是的,你说的是对的,但是没有解决我所提出的问题,他总是调用完就退出了
 
怎么这么冷清阿,我每天都提,还是~~~
 
我记得以前也问过类似的问题,看来你只能处理警告那个事件,这段程序有两功能,第一不显示
警告对话框,第二判断com计数是否为零,是零退出。

呵呵,现在DFW每天的贴子很多的,翻得很快,你要多提才行啦
 
不过那个警告事件怎么截获啊?

顺便UP一下
 
第二个问题我问了蚂蚁的作者,他告诉我IDocument指针不能跨进程,现在知道了
可以采取其他的办法了[:)]
第一个问题还是不知道啊
 
to kindly:
COM是采用接口引用计数机制来实现它的创建与释放与客户无关性的。因此你的客户端
调用COM以后,如果退出,它的计数为0,当然COM也会自动退出了。
诚如你上面所做的,要使它不退出,只有显式调用_AddRef(增加一个引用)了。为了
避免你的COM服务器在以后退出时跳出一个可恶的对话框,你可以:
(1)修改ComServ单元的源码。(需要的话,向我发email:boypine@yahoo.com.cn)
或者:
(2)在你的COM Server的主Form的OnCloseQuery事件中写下:
ComServer.UIInteractive:=False;
 
试过了,是可以的:),不过怎么没有mypine的加分选项啊?
 
to 版主,怎么不能给mypine加分啊

接受答案,并分配积分

antic_ant


请注意分数总和应为 200 分
没有mypine啊
 
to kindly:
没关系,兄弟,不能加分就算了!能帮你解决问题已经让我很高兴了!
以后多多讨论讨论吧!
 
to mypine:
能加分了[:)],谢谢你的帮助,初学COM,很多不懂的地方要向你请教。能留个mail吗?
有问题大家可以讨论讨论
 
to kindly:
boypine@yahoo.com.cn
 
to mypine
呵呵,,我也藏一个,,其实这个问题我以前也问题,一直没有解决,最后就不了了之了,,
想不到碰上一个高手,还留了MAIL,呵呵赶紧写下来,,,以后再请教COM问题了!!
 
后退
顶部