[fpc-pascal] importtl and ignored [out, retval] parameters

Lubos Pintes lubos.pintes at gmail.com
Thu May 4 16:46:15 CEST 2017


Hello,
I wanted to import the UIAutomationClient type library. Thus I compiled 
the UIAutomationClient.idl to .tlb and then used importtl to convert it 
to pascal.
Importtl converted this incorrectly, it ignored [out, retval] parameters 
on many places. For example, two examples from IUIAutomationElement 
interface.
IDL:
         HRESULT GetRuntimeId (
             [out, retval] SAFEARRAY(int) * runtimeId );

         HRESULT FindFirst (
             [in] enum TreeScope scope,
             [in] IUIAutomationCondition * condition,
             [out, retval] IUIAutomationElement ** found );

Pascal:
     // GetRuntimeId :
    function GetRuntimeId:HRESULT;stdcall;
     // FindFirst :
    function 
FindFirst(scope:TreeScope;condition:IUIAutomationCondition):HRESULT;stdcall;





More information about the fpc-pascal mailing list