Jos*_*hua 0 delphi dcom delphi-7
是否有Delphi 7的Application.DelayInitialize的替代品?我正在尝试创建一个托管COM服务器的Delphi 7服务,但它不起作用,我相信这是因为我没有使用Application.DelayInitialize.
我已经使用BCB6编写了几个COM托管服务,它们在Win9x以后的所有Windows版本中都可以正常工作,所以我不得不多次处理同样的问题.
根本不叫Application.Initialize()在对Win2003的+进程启动,等到TService的OnStart或OnExecute事件来调用它.这样,服务API在初始化任何COM对象之前运行.
诀窍是Application.Initialize()在Win2003 +上将呼叫延迟到ONLY,并且仅在服务实际运行时.如果有以下情况,请勿延迟通话:
在这些条件下,Application.Initialize()在流程启动时正常调用.
因此,您需要检查操作系统版本和命令行参数,以了解何时Application.Initialize()正确调用.