|
@@ -1276,7 +1276,9 @@ HKCR
|
|
inc(DispParams.cNamedArgs);
|
|
inc(DispParams.cNamedArgs);
|
|
end;
|
|
end;
|
|
DISPATCH_METHOD:
|
|
DISPATCH_METHOD:
|
|
- if assigned(Result) and (CallDesc^.ArgCount=0) then
|
|
|
|
|
|
+ { It appears that certain COM servers expect both DISPATCH_METHOD and DISPATCH_PROPERTYGET
|
|
|
|
+ flags for anything returning a result, see bug #24352 }
|
|
|
|
+ if assigned(Result) then
|
|
InvokeKind:=DISPATCH_METHOD or DISPATCH_PROPERTYGET;
|
|
InvokeKind:=DISPATCH_METHOD or DISPATCH_PROPERTYGET;
|
|
end;
|
|
end;
|
|
{$ifdef DEBUG_COMDISPATCH}
|
|
{$ifdef DEBUG_COMDISPATCH}
|
|
@@ -1488,7 +1490,9 @@ HKCR
|
|
DispParams.rgdispidNamedArgs:=@dispidNamed;
|
|
DispParams.rgdispidNamedArgs:=@dispidNamed;
|
|
end;
|
|
end;
|
|
DISPATCH_METHOD:
|
|
DISPATCH_METHOD:
|
|
- if assigned(res) and (desc^.calldesc.argcount=0) then
|
|
|
|
|
|
+ { It appears that certain COM servers expect both DISPATCH_METHOD and DISPATCH_PROPERTYGET
|
|
|
|
+ flags for anything returning a result, see bug #24352 }
|
|
|
|
+ if assigned(res) then
|
|
flags:=DISPATCH_METHOD or DISPATCH_PROPERTYGET;
|
|
flags:=DISPATCH_METHOD or DISPATCH_PROPERTYGET;
|
|
end;
|
|
end;
|
|
|
|
|