COM对象与自动化对象
我正在DelphiXe2中创建一个COM对象。我正在尝试使用safecall创建方法,但默认为stdcall 当我使用自动化对象时,可以使用safecall 对于性能问题,我使用COM对象。可以使用safecall吗COM对象与自动化对象,com,automation,activex,Com,Automation,Activex,我正在DelphiXe2中创建一个COM对象。我正在尝试使用safecall创建方法,但默认为stdcall 当我使用自动化对象时,可以使用safecall 对于性能问题,我使用COM对象。可以使用safecall吗 谢谢是的,您可以使用safecall约定。 safecall和stdcall之间的唯一区别在于safecall适用于异常驱动流。也就是说,如果您的Delphi函数是safecall,它可能会引发异常,该异常将在内部捕获并转换为正确的HRESULT 顺便说一句,COM对象与自动化对象
谢谢是的,您可以使用
safecall
约定。
safecall
和stdcall
之间的唯一区别在于safecall
适用于异常驱动流。也就是说,如果您的Delphi函数是safecall
,它可能会引发异常,该异常将在内部捕获并转换为正确的HRESULT
顺便说一句,COM对象与自动化对象相比没有性能优势:尽管自动化对象通过接口支持较慢的“”,但其客户端不必使用它。能够使用“早期绑定”的客户端也可以将其用于自动化对象。@PedroMagalhaes这正是我在本线程中所寻找的。我不确定什么是“自动化对象”。