Forwarding to wine-devel as well

P.S. Roman, please reply to wine-devel list next time.


-------- Original Message --------
Subject: Re: ole32: Fix dwClsContext parameter of a CoCreateInstance call in DefaultHandler_Run.
Date: Tue, 09 Oct 2012 15:27:10 +0400
From: Roman Dadkov <romand@etersoft.ru>
Organization: Etersoft
To: Nikolay Sivov <bunglehead@gmail.com>


Yes, it's my fail, I forgot, that can be use one enumeration CLSCTX_ALL in this case.
Unfortunately, the test for this case can't be added to Wine, because it leads a crash. But I have attached a small test program that shows a problem. It uses CLSID which entered into the registry after installing Office using Wine.

Nikolay Sivov 08.10.2012 10:07:

On 10/6/2012 19:29, Roman Dadkov wrote:
This patch change dwClsContext parameter of a CoCreateInstance call in function DefaultHandler_Run.
Because even if there is some clsid in the registry, the function will not be able to run the newly created object.


 
-  hr = CoCreateInstance(&This->clsid, NULL, CLSCTX_LOCAL_SERVER,
+  hr = CoCreateInstance(&This->clsid, NULL,
+                        CLSCTX_INPROC_SERVER|CLSCTX_INPROC_HANDLER|
+                        CLSCTX_LOCAL_SERVER|CLSCTX_REMOTE_SERVER,
                         &IID_IOleObject, (void **)&This->pOleDelegate);
This could be replaced with CLSCTX_ALL.

Is it possible to add a test for that?