如何检查OleInitialize是否已被调用?

时间:2010-07-19 03:23:04

标签: delphi com delphi-7

我想写一个Delphi函数来注册一个dll。我希望函数在它执行之前检查是否已经调用了OleInitialize。我想我正试图避免两次初始化的后果,因为我不确定它们可能是什么。我担心我的函数不会像regsvr32.exe一样处理各种各样的dll。

1 个答案:

答案 0 :(得分:8)

查看documentation

  

返回值
  [...]
  S_FALSE - COM库已在此公寓中初始化。

......还有:

  

通常,COM库仅在公寓上初始化一次。后续调用将成功,只要它们不尝试更改公寓的并发模型,但将返回S_FALSE