Browse Source

* fixed initialization, resolves #10615

git-svn-id: trunk@9739 -
florian 17 years ago
parent
commit
3f25f6898f
1 changed files with 6 additions and 1 deletions
  1. 6 1
      packages/winunits-base/src/comobj.pp

+ 6 - 1
packages/winunits-base/src/comobj.pp

@@ -213,6 +213,7 @@ unit comobj;
       CoReleaseServerProcess : TCoReleaseServerProcessProc = nil;
       CoResumeClassObjects : TCoResumeClassObjectsProc = nil;
       CoSuspendClassObjects : TCoSuspendClassObjectsProc = nil;
+      CoInitFlags : Longint = -1;
 
 implementation
 
@@ -1044,7 +1045,11 @@ initialization
     end;
 
   if not(IsLibrary) then
-    Initialized:=Succeeded(CoInitialize(nil));
+    if (CoInitFlags=-1) or not(assigned(comobj.CoInitializeEx)) then
+      Initialized:=Succeeded(CoInitialize(nil))
+    else
+      Initialized:=Succeeded(comobj.CoInitializeEx(nil, CoInitFlags));
+
   SafeCallErrorProc:=@SafeCallErrorHandler;
   VarDispProc:=@ComObjDispatchInvoke;
   DispCallByIDProc:=@DoDispCallByID;