소스 검색

* support for getting dispatch interface properties

git-svn-id: trunk@9171 -
florian 18 년 전
부모
커밋
48c0e3b023
1개의 변경된 파일9개의 추가작업 그리고 0개의 파일을 삭제
  1. 9 0
      packages/base/winunits/comobj.pp

+ 9 - 0
packages/base/winunits/comobj.pp

@@ -800,6 +800,15 @@ implementation
             end;
           InvokeKind:=CallDesc^.CallType;
           MethodID:=DispIDs^[0];
+          case InvokeKind of
+            DISPATCH_PROPERTYPUT:
+              begin
+                { !! FIXME}
+              end;
+            DISPATCH_METHOD:
+              if assigned(Result) and (CallDesc^.ArgCount=0) then
+                InvokeKind:=DISPATCH_METHOD or DISPATCH_PROPERTYGET;
+          end;
 {$ifdef DEBUG_COMDISPATCH}
           writeln('DispatchInvoke: MethodID: ',MethodID,' InvokeKind: ',InvokeKind);
 {$endif DEBUG_COMDISPATCH}