Skip to content

IVCLComObject

[Properties (by Name)][Methods (by Name)][Events (by Name)]

Com automation Object interface

Declaration

Source position: classesh.inc line 2006

Type
  IVCLComObject = interface ['{E07892A0-F52F-11CF-BD2F-0020AF0E5B81}']
    function GetTypeInfoCount(out Count: Integer) : HRESULT;
    function GetTypeInfo(Index: Integer; LocaleID: Integer; out TypeInfo)
                         : HRESULT;
    function GetIDsOfNames(const IID: TGuid; Names: Pointer; 
                          NameCount: Integer; LocaleID: Integer; 
                          DispIDs: Pointer) : HRESULT;
    function Invoke(DispID: Integer; const IID: TGuid; LocaleID: Integer; 
                   Flags: Word; var Params; VarResult: Pointer; 
                   ExcepInfo: Pointer; ArgErr: Pointer) : HRESULT;
    function SafeCallException(ExceptObject: TObject; 
                              ExceptAddr: CodePointer) : HRESULT;
    procedure FreeOnRelease;
  end
  ;

Description

IVCLComObject is used by TComponent to implement the IUnknown interface used by COM automation servers. Partially, it is the translation to pascal of the IDispatch interface definition by Microsoft. If TComponent needs to return an IUnknown interface, it creates a IVCLComObject interface instead.

Members

Member Type Visibility Description
FreeOnRelease Method default Is called by TComponent.FreeOnRelease
GetIDsOfNames Method default The IDispatch:GetIDsOfNames call for automation servers.
GetTypeInfo Method default The IDispatch:GetTypeInfo call for automation servers
GetTypeInfoCount Method default The IDispatch:GetTypeInfoCount call for automation servers
Invoke Method default The IDispatch:Invoke call for automation servers.
SafeCallException Method default This method can be invoked if an exception occurs during Invoke

Inheritance

Class Description
IVCLComObject Com automation Object interface

See also

Name Description
TComponent.VCLComObject Not implemented.