Which QueryInterface is called?

Bill Medland billmedland at mercuryspeed.com
Mon Jan 17 16:33:13 CST 2005


On January 17, 2005 01:36 pm, Mike Hearn wrote:
> I think Robs theory is right, but IMHO we need more tracing in this part
> of the code anyway. Try applying this patch and resending the log.
>
> I suspect you'll get
>
> err:proxy_manager_create_ifproxy: Could not locate PSFactoryBuffer for IID
> {00000000-0000-0000-C000-000000000046}
>
> But let's find out.
>
> thanks -mike

'Fraid not.  See attached.  I added the corresponding traces just to confirm 
that I was actually executing the modified code.
As you can see, it located, connected and constructed.

0009:trace:ole:WINE_StringFromCLSID 
0x455e78->{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:trace:ole:CoGetClassObject 
	CLSID:	{b6b35894-dd6f-11d3-84ac-00c04f0e1b46},
	IID:	{00000001-0000-0000-c000-000000000046}
0009:warn:ole:CoGetClassObject class {B6B35894-DD6F-11D3-84AC-00C04F0E1B46} 
not registered inproc
0009:trace:ole:create_marshalled_proxy 
rclsid={b6b35894-dd6f-11d3-84ac-00c04f0e1b46}, 
iid={00000001-0000-0000-c000-000000000046}
0009:trace:ole:WINE_StringFromCLSID 
0x455e78->{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:trace:ole:create_marshalled_proxy waiting for 
\\.\pipe\{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:trace:ole:WINE_StringFromCLSID 
0x455e78->{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:trace:ole:create_server activating local server 
'L"G:\\runtime\\a4wsignonmgr.exe -Embedding"' for 
{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0012:trace:ole:DllMain 0x550000 0x1 0x1
0009:trace:ole:create_marshalled_proxy waiting for 
\\.\pipe\{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:warn:ole:create_marshalled_proxy Could not open named pipe to broker 
\\.\pipe\{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}, le is 2
0012:trace:ole:DllMain (0x6e0000,1,0x1)
0012:trace:ole:CoInitializeEx ((nil), 2)
0012:trace:ole:CoInitializeEx () - Initializing the COM libraries
0012:trace:ole:RunningObjectTableImpl_Initialize ()
0012:trace:ole:COM_CreateApartment creating new apartment, model=2
0012:trace:ole:COM_CreateApartment Created apartment on OXID 1100000012
0012:trace:ole:WINE_StringFromCLSID 
0x41f320->{A2086A6A-3F3E-457C-8102-A4F99AD7C2DA}
0012:trace:ole:CoRegisterClassObject 
({b6b35894-dd6f-11d3-84ac-00c04f0e1b46},0x40570180,0x00000004,0x00000001,0x41f094)
0012:trace:ole:CoMarshalInterface (0x40058e50, 
{00000001-0000-0000-c000-000000000046}, 0x40570180, 0, (nil), 1)
0012:trace:ole:CoGetStandardMarshal 
({00000001-0000-0000-c000-000000000046},0x40570180,0,(nil),1,0x52fd60)
0012:trace:ole:CoMarshalInterface Using standard marshaling
0012:trace:ole:CoMarshalInterface Calling IMarshal::MarshalInterace
0012:trace:ole:StdMarshalImpl_MarshalInterface 
(...,{00000001-0000-0000-c000-000000000046},...)
0012:trace:ole:start_apartment_listener_thread apt->listenertid=0
0014:trace:ole:apartment_listener_thread Apartment listener thread starting on 
(\\.\pipe\WINE_OLE_StubMgr_0000001100000012)
0012:trace:ole:CoGetPSClsid () riid={00000001-0000-0000-c000-000000000046}, 
pclsid=0x52fcf4
0012:trace:ole:WINE_StringFromCLSID 
0x594170->{00000001-0000-0000-C000-000000000046}
0012:trace:ole:__CLSIDFromStringA {00000320-0000-0000-C000-000000000046} -> 
0x52fcf4
0012:trace:ole:CoGetPSClsid () Returning 
CLSID={00000320-0000-0000-c000-000000000046}
0012:trace:ole:WINE_StringFromCLSID 
0x52fcf4->{00000320-0000-0000-C000-000000000046}
0012:trace:ole:CoGetClassObject 
	CLSID:	{00000320-0000-0000-c000-000000000046},
	IID:	{d5f569d0-593b-101a-b569-08002b2dbf7a}
0012:trace:ole:COMPOBJ_DLLList_Add 
0012:trace:ole:PSFacBuf_CreateStub 
({00000001-0000-0000-c000-000000000046},0x40570180,0x52fcec)
0012:fixme:ole:StdMarshalImpl_MarshalInterface table marshalling unimplemented
0012:trace:ole:get_stub_manager_from_object not found for object 0x40570180
0012:trace:ole:register_ifstub constructing new stub manager
0012:trace:ole:new_stub_manager Created new stub manager (oid=1) at 0x40058c20 
for object with IUnknown 0x40570180
0012:trace:ole:stub_manager_new_ifstub oid=1, stubbuffer=0x40058f10, 
iptr=0x40570180, iid={00000001-0000-0000-c000-000000000046}, 
tablemarshal=TRUE
0012:trace:ole:stub_manager_int_release after 1
0015:trace:ole:local_server_thread Starting threader for 
{b6b35894-dd6f-11d3-84ac-00c04f0e1b46}.
0015:trace:ole:WINE_StringFromCLSID 
0x40058e78->{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0009:trace:ole:create_marshalled_proxy waiting for 
\\.\pipe\{B6B35894-DD6F-11D3-84AC-00C04F0E1B46}
0015:trace:ole:local_server_thread marshalling IClassFactory to client
0009:trace:ole:create_marshalled_proxy read marshal id from pipe
0009:trace:ole:create_marshalled_proxy unmarshalling classfactory
0009:trace:ole:CoUnmarshalInterface (0x4009e788, 
{00000001-0000-0000-c000-000000000046}, 0x1ea4f4dc)
0009:trace:ole:get_unmarshaler_from_stream Using standard unmarshaling
0009:trace:ole:StdMarshalImpl_UnmarshalInterface 
(...,{00000001-0000-0000-c000-000000000046},....)
0009:trace:ole:CoGetPSClsid () riid={00000001-0000-0000-c000-000000000046}, 
pclsid=0x1ea4ef84
0009:trace:ole:WINE_StringFromCLSID 
0x2d4b9170->{00000001-0000-0000-C000-000000000046}
0009:trace:ole:__CLSIDFromStringA {00000320-0000-0000-C000-000000000046} -> 
0x1ea4ef84
0009:trace:ole:CoGetPSClsid () Returning 
CLSID={00000320-0000-0000-c000-000000000046}
0009:trace:ole:WINE_StringFromCLSID 
0x1ea4ef84->{00000320-0000-0000-C000-000000000046}
0009:trace:ole:CoGetClassObject 
	CLSID:	{00000320-0000-0000-c000-000000000046},
	IID:	{d5f569d0-593b-101a-b569-08002b2dbf7a}
0009:trace:ole:COMPOBJ_DLLList_Add 
0009:trace:ole:ClientIdentity_AddRef 0x400a2478 - before 0
0009:trace:ole:proxy_manager_create_ifproxy Located PSFactoryBuffer for iid 
{00000001-0000-0000-c000-000000000046}
0009:trace:ole:proxy_manager_create_ifproxy Connected ifproxy to RPC channel
0009:trace:ole:proxy_manager_create_ifproxy ifproxy construction succeeded
0009:trace:ole:CFProxy_CreateInstance 
((nil),{00000000-0000-0000-c000-000000000046},0x1ea4f50c)
0009:trace:ole:PipeBuf_GetBuffer 
(0x1ea4f488,{00000001-0000-0000-c000-000000000046})
0009:trace:ole:PipeBuf_SendReceive ()
0015:trace:ole:local_server_thread done marshalling IClassFactory
0016:trace:ole:stub_dispatch_thread starting for apartment OXID 
0000000800000009
0016:trace:ole:stub_manager_int_addref before 1
0016:trace:ole:get_stub_manager found 0x40058c20 for oid 1
0016:trace:ole:stub_manager_int_release after 1
0016:trace:ole:CFStub_Invoke 
->CreateInstance({00000000-0000-0000-c000-000000000046})
0016:trace:ole:CoMarshalInterface (0x40079318, 
{00000000-0000-0000-c000-000000000046}, 0x40570164, 0, (nil), 0)
0016:trace:ole:CoGetStandardMarshal 
({00000000-0000-0000-c000-000000000046},0x40570164,0,(nil),0,0x6627efec)
0016:trace:ole:CoMarshalInterface Using standard marshaling
0016:trace:ole:CoMarshalInterface Calling IMarshal::MarshalInterace
0016:trace:ole:StdMarshalImpl_MarshalInterface 
(...,{00000000-0000-0000-c000-000000000046},...)
0016:trace:ole:start_apartment_listener_thread apt->listenertid=20
0016:trace:ole:CoGetPSClsid () riid={00000000-0000-0000-c000-000000000046}, 
pclsid=0x6627ef80
0016:trace:ole:WINE_StringFromCLSID 
0x6627f100->{00000000-0000-0000-C000-000000000046}
0016:trace:ole:__CLSIDFromStringA {00000320-0000-0000-C000-000000000046} -> 
0x6627ef80
0016:trace:ole:CoGetPSClsid () Returning 
CLSID={00000320-0000-0000-c000-000000000046}
0016:trace:ole:WINE_StringFromCLSID 
0x6627ef80->{00000320-0000-0000-C000-000000000046}
0016:trace:ole:CoGetClassObject 
	CLSID:	{00000320-0000-0000-c000-000000000046},
	IID:	{d5f569d0-593b-101a-b569-08002b2dbf7a}
0016:trace:ole:COMPOBJ_DLLList_Add 
0016:trace:ole:PSFacBuf_CreateStub 
({00000000-0000-0000-c000-000000000046},0x40570164,0x6627ef78)
0016:trace:ole:get_stub_manager_from_object not found for object 0x40570164
0016:trace:ole:register_ifstub constructing new stub manager
0016:trace:ole:new_stub_manager Created new stub manager (oid=2) at 0x4007fd88 
for object with IUnknown 0x40570164
0016:trace:ole:stub_manager_new_ifstub oid=2, stubbuffer=0x4007ac90, 
iptr=0x40570164, iid={00000000-0000-0000-c000-000000000046}, 
tablemarshal=FALSE
0016:trace:ole:stub_manager_ext_addref added 1 refs to 0x4007fd88 (oid 2), rc 
is now 1
0016:trace:ole:stub_manager_int_release after 1
0009:trace:ole:CFProxy_CreateInstance got 56 bytes data.
0009:trace:ole:CoUnmarshalInterface (0x4009a3f0, 
{00000000-0000-0000-c000-000000000046}, 0x1ea4f50c)
0009:trace:ole:get_unmarshaler_from_stream Using standard unmarshaling
0009:trace:ole:StdMarshalImpl_UnmarshalInterface 
(...,{00000000-0000-0000-c000-000000000046},....)
0009:trace:ole:CoGetPSClsid () riid={00000000-0000-0000-c000-000000000046}, 
pclsid=0x1ea4f3b4
0009:trace:ole:WINE_StringFromCLSID 
0x455cf0->{00000000-0000-0000-C000-000000000046}
0009:trace:ole:__CLSIDFromStringA {00000320-0000-0000-C000-000000000046} -> 
0x1ea4f3b4
0009:trace:ole:CoGetPSClsid () Returning 
CLSID={00000320-0000-0000-c000-000000000046}
0009:trace:ole:WINE_StringFromCLSID 
0x1ea4f3b4->{00000320-0000-0000-C000-000000000046}
0009:trace:ole:CoGetClassObject 
	CLSID:	{00000320-0000-0000-c000-000000000046},
	IID:	{d5f569d0-593b-101a-b569-08002b2dbf7a}
0009:trace:ole:COMPOBJ_DLLList_Add 
0009:trace:ole:ClientIdentity_AddRef 0x400a25c8 - before 0
0009:trace:ole:proxy_manager_create_ifproxy Located PSFactoryBuffer for iid 
{00000000-0000-0000-c000-000000000046}
0009:trace:ole:proxy_manager_create_ifproxy Connected ifproxy to RPC channel
0009:trace:ole:proxy_manager_create_ifproxy ifproxy construction succeeded
0009:trace:ole:ClientIdentity_Release 0x400a2478 - after 0
0009:trace:ole:PipeBuf_Release written disconnect packet
0016:trace:ole:COM_RpcReceive read disconnect header
0016:trace:ole:stub_manager_int_addref before 1
0016:trace:ole:get_stub_manager found 0x40058c20 for oid 1
0016:trace:ole:stub_manager_ext_release removed 1 refs from 0x40058c20 (oid 
1), rc is now 4294967295
0016:trace:ole:stub_manager_int_release after 1
0009:trace:ole:CoCreateInstance Successfully returning 0x400a2680 for 
interface {00000000-0000-0000-c000-000000000046} of class 
{b6b35894-dd6f-11d3-84ac-00c04f0e1b46}
0009:trace:ole:OleRun Enter
0009:trace:ole:OleRun No runnable interface
0009:trace:ole:ClientIdentity_Release 0x400a25c8 - after 0
0009:trace:ole:PipeBuf_Release written disconnect packet
0016:trace:ole:COM_RpcReceive read disconnect header
0016:trace:ole:stub_manager_int_addref before 1
0016:trace:ole:get_stub_manager found 0x4007fd88 for oid 2
0016:trace:ole:stub_manager_ext_release removed 1 refs from 0x4007fd88 (oid 
2), rc is now 0
0016:trace:ole:stub_manager_int_release after 1
0016:trace:ole:stub_manager_int_release after 0
0016:trace:ole:stub_manager_delete destroying 0x4007fd88 (oid=2)
0016:trace:ole:stub_manager_delete_ifstub m=0x4007fd88, m->oid=2, 
ipid={00000000-0000-0000-c000-000000000046}
0009:trace:ole:RevokeDragDrop (0x10040)
0009:trace:ole:CoLockObjectExternal pUnk=0x4008d090, fLock=FALSE, 
fLastUnlockReleases=TRUE
0009:trace:ole:RevokeDragDrop (0x10044)
0009:trace:ole:CoLockObjectExternal pUnk=0x4008d124, fLock=FALSE, 
fLastUnlockReleases=TRUE
0009:trace:ole:RevokeDragDrop (0x1002e)
0009:trace:ole:CoLockObjectExternal pUnk=0x4008d78a, fLock=FALSE, 
fLastUnlockReleases=TRUE
0009:fixme:ole:CoRegisterMessageFilter stub
0009:trace:ole:COMPOBJ_DllList_FreeUnused 
0009:trace:ole:OleUninitialize ()
0009:trace:ole:OleUninitialize () - Freeing the last reference count
0009:trace:ole:OLEClipbrd_UnInitialize ()
0009:trace:ole:OLEClipbrd_Destroy ()
0009:trace:ole:OLEClipbrd_Destroy () - Destroying clipboard data object.
0009:trace:ole:CoUninitialize ()
0009:trace:ole:COM_ApartmentRelease destroying apartment 0x4006e698, oxid 
800000009
0009:trace:ole:CoUninitialize () - Releasing the COM libraries
0009:trace:ole:RunningObjectTableImpl_UnInitialize ()
0009:trace:ole:RunningObjectTableImpl_Release (0x4006c428)
0009:trace:ole:RunningObjectTableImpl_Destroy ()
0009:trace:ole:DllMain (0x52db0000,0,0x1)
0009:trace:ole:DllMain 0x2d470000 0x0 0x1
0010:fixme:ole:read_pipe Read only 0 of 4 bytes from 0xac.
0010:warn:ole:stub_dispatch_thread exiting with hres 80004005
0016:fixme:ole:read_pipe Read only 0 of 4 bytes from 0x64.
0016:warn:ole:stub_dispatch_thread exiting with hres 80004005

-- 
Bill Medland
mailto:billmedland at mercuryspeed.com
http://webhome.idirect.com/~kbmed




More information about the wine-devel mailing list