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.
This could be replaced with CLSCTX_ALL.- 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);
Is it possible to add a test for that?