http://bugs.winehq.org/show_bug.cgi?id=5841
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Component|-unknown |msxml3 Version|unspecified |0.9.18. Summary|ADO no worky |XML database manipulation | |through ADO nonfunctional | |(support for | |MSXML2.XMLPARSER.3.0 -> | |CLSID | |{F5078F31-C551-11D3-89B9-00 | |00F81FE221} needed)
--- Comment #10 from Anastasius Focht focht@gmx.net 2011-06-16 11:39:21 CDT --- Hello,
it seems Wine msxml3 needs to support MSXML2.XMLPARSER.3.0 -> {F5078F31-C551-11D3-89B9-0000F81FE221}
To reproduce: "mdac28" "vb6run" in clean WINEPREFIX
--- snip --- $ wine ./gmdAF.exe -------------------------------------- gmd-get me drunk, the wine tester! zen -------------------------------------- -------------------------------------- gmdAF->Testing creation Ado file(s)... gmdAF->Creation of Ado File: OK -------------------------------------- gmdAF->Testing creation of Ado file(s) gmdAF->Insertion record: OK -------------------------------------- gmdAF->Testing deleting record... err:ole:CoGetClassObject class {f5078f31-c551-11d3-89b9-0000f81fe221} not registered err:ole:CoGetClassObject no class object {f5078f31-c551-11d3-89b9-0000f81fe221} could be created for context 0x1 gmdAF->Failed on deleting record in the Ado File gmdAF->Code: 3709 gmdAF->Description: The connection cannot be used to perform this operation. It is either closed or invalid in this context. --- snip ---
Tracing with +tid,+seh,+relay,+snoop,+ole,+variant reveals:
--- snip --- 0021:Call ole32.CoCreateInstance(1f5e5998,00000000,00000001,1f5e59a8,00b69954) ret=1f5e5866 0021:trace:ole:CoCreateInstance (rclsid={f5078f31-c551-11d3-89b9-0000f81fe221}, pUnkOuter=(nil), dwClsContext=00000001, riid={d242361e-51a0-11d2-9caf-0060b0ec3d39}, ppv=0xb69954) 0021:trace:ole:CoGetClassObject CLSID: {f5078f31-c551-11d3-89b9-0000f81fe221},IID: {00000001-0000-0000-c000-000000000046} 0021:Call advapi32.RegOpenKeyExW(80000000,0032f56e L"CLSID\{F5078F31-C551-11D3-89B9-0000F81FE221}",00000000,00020019,0032f5c8) ret=685e402b 0021:Ret advapi32.RegOpenKeyExW() retval=00000002 ret=685e402b 0021:err:ole:CoGetClassObject class {f5078f31-c551-11d3-89b9-0000f81fe221} not registered 0021:err:ole:CoGetClassObject no class object {f5078f31-c551-11d3-89b9-0000f81fe221} could be created for context 0x1 0021:Ret ole32.CoCreateInstance() retval=80040154 ret=1f5e5866 0021:Call msvcrt._CxxThrowException(0032f790,1f6067f8) ret=1f602df5 0021:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0032f6e4) ret=2002a341 ... 0021:CALL MSDART._LoadVersionedResourceEx@16(1f5e0000,0032f498,00000001,00000000) ret=1f5fb615 0021:Call KERNEL32.LoadLibraryExW(0032f498 L"C:\Program Files\Common Files\System\MSADC\msdaprsr.dll",00000000,00000000) ret=1f6796e7 0021:Ret KERNEL32.LoadLibraryExW() retval=1f5d0000 ret=1f6796e7 0021:RET MSDART._LoadVersionedResourceEx@16() retval=1f5d0000 ret=1f5fb615 0021:Call user32.LoadStringW(1f5d0000,0000008a,012d4d90,00000400) ret=1f5fb7df 0021:Ret user32.LoadStringW() retval=000000d6 ret=1f5fb7df 0021:trace:ole:ICreateErrorInfoImpl_SetDescription (0x152360): L"Persisted XML files cannot be opened with the version of the Microsoft XML Parser currently installed on this computer. Upgrade your system through a Windows 95/98 Service Release or Internet Explorer 5.0 or later." 0021:Call ntdll.RtlAllocateHeap(00110000,00000000,000001b2) ret=685f76d7 0021:Ret ntdll.RtlAllocateHeap() retval=00152668 ret=685f76d7 0021:trace:ole:ICreateErrorInfoImpl_QueryInterface (0x152360) 0021:trace:ole:IErrorInfoImpl_QueryInterface (0x152360)->({1cf2b120-547d-101b-8e65-08002b2bd119},0x32f714) 0021:trace:ole:IErrorInfoImpl_AddRef (0x152360)->(count=1) 0021:trace:ole:IErrorInfoImpl_QueryInterface -- Interface: (0x32f714)->(0x152360) 0021:trace:ole:IErrorInfoImpl_QueryInterface (0x152360)->({0c733a67-2a1c-11ce-ade5-00aa0044773d},0x32f6a4) 0021:trace:ole:IErrorInfoImpl_QueryInterface -- Interface: E_NOINTERFACE ... --- snip ---
'winetricks msxml3' works around this:
--- snip --- $ wine ./gmdAF.exe -------------------------------------- gmd-get me drunk, the wine tester! zen -------------------------------------- -------------------------------------- gmdAF->Testing creation Ado file(s)... gmdAF->Creation of Ado File: OK -------------------------------------- gmdAF->Testing creation of Ado file(s) gmdAF->Insertion record: OK -------------------------------------- gmdAF->Testing deleting record... gmdAF->Deleting record: OK --- snip ---
$ wine --version wine-1.3.22-129-gdad3342
Regards