This patch: ___________________________
=================================================================== RCS file: /home/wine/wine/dlls/ntdll/loadorder.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -p -r1.16 -r1.17 --- wine/dlls/ntdll/loadorder.c 2005/06/21 09:52:41 1.16 +++ wine/dlls/ntdll/loadorder.c 2005/07/07 18:26:11 1.17 @@ -80,12 +80,6 @@ static const enum loadorder_type default LOADORDER_BI, LOADORDER_DLL, 0 };
-/* default for modules with an explicit path */ -static const enum loadorder_type default_path_loadorder[LOADORDER_NTYPES] = -{ - LOADORDER_DLL, LOADORDER_BI, 0 -}; - static const WCHAR separatorsW[] = {',',' ','\t',0};
static int init_done; @@ -608,11 +602,6 @@ void MODULE_GetLoadOrderW( enum loadorde debugstr_loadorder(loadorder), debugstr_w(path) ); goto done; } - - /* and last the hard-coded default */ - memcpy( loadorder, default_loadorder, sizeof(default_loadorder) ); - TRACE( "got hardcoded default %s for %s\n", - debugstr_loadorder(loadorder), debugstr_w(path) ); } else /* module contains an explicit path */ { @@ -639,13 +628,13 @@ void MODULE_GetLoadOrderW( enum loadorde debugstr_loadorder(loadorder), debugstr_w(path) ); goto done; } - - /* and last the hard-coded default */ - memcpy( loadorder, default_path_loadorder, sizeof(default_path_loadorder) ); - TRACE( "got hardcoded path default %s for %s\n", - debugstr_loadorder(loadorder), debugstr_w(path) ); }
+ /* and last the hard-coded default */ + memcpy( loadorder, default_loadorder, sizeof(default_loadorder) ); + TRACE( "got hardcoded default %s for %s\n", + debugstr_loadorder(loadorder), debugstr_w(path) ); + done: if (app_key) NtClose( app_key ); RtlFreeHeap( GetProcessHeap(), 0, module );
___________________________
breaks the MDAC Installation, no matter which version you attempt to install. Reversing the patch fixes the bug(?). (I've also "downdated" actual CVS-Version of loadorder.c to 1.16 - it works .. at least for the installer, though I don't know what it breaks on the other end.)
I'm not really sure what exactly happens, the installer just says "Rolling back MDAC .." assumingly just at the point where it's going to install the "Microsoft XML parser".
If anyone likes to try to recreate the bug, you'll have to install IE, and for that you'll have to use Windows-Version Win98 and a NATIVE advpack.dll.
Ray Jones wrote:
This patch:
breaks the MDAC Installation, no matter which version you attempt to install.
The patch changes the way dll overrides work, and is unlikely to be the direct cause of the regression, you probably only need to adjust your configuration a little.
If anyone likes to try to recreate the bug, you'll have to install IE, and for that you'll have to use Windows-Version Win98 and a NATIVE advpack.dll.
Perhaps try adding the following line to the dll overrides section in user.reg:
"advpack" = "native, builtin"
Mike
Mike McCormack writes:
Perhaps try adding the following line to the dll overrides section in user.reg:
"advpack" = "native, builtin"
I did that already, it is necessary to install IE since the switch to the WineCfg-tool, without the native dll IE won't install, because it is not able to connect to the internet to download/check components. Err, or whatever MS is doing there ;~ However IE-Installation works with any "recent" Config-File-WINE (and Sidenet-configuration) without a native advpack.
I've not figured out yet which patch exactly "did it".
Mike McCormack <mike <at> codeweavers.com> writes:
Ray Jones wrote:
This patch:
breaks the MDAC Installation, no matter which version you attempt to install.
The patch changes the way dll overrides work, and is unlikely to be the direct cause of the regression, you probably only need to adjust your configuration a little.
Bug 3178 (http://bugs.winehq.org/show_bug.cgi?id=3178) seems to reflect my problem exactly, and with having the ntdll-patch I've mentioned making a change in the way dlls are loaded it's solution seems only logical (from 2005/10/24 by Hans Leidekker): Use a native odbccp32.dll. This works fine for me for different WINE versions since the ntdll-patch. Err, of course additional to a set to native advpack.dll and "Wine98".
He also provided a patch for odbccp32 (http://www.winehq.org/pipermail/wine-patches/2005-October/021484.html) which I'm about to test.
Furthermore according to a "solution" in bugreport 3453 (http://bugs.winehq.org/show_bug.cgi?id=3453) there is not need to really install IE60 to install MDAC. Inserting the registrykey just does fine for me. However, I need to install IE (read: some of it's components), though.
(BTW: Setting advpack.dll to native is still necessary to install IE60, though. But to correct myself, it is NOT necessary to really have it in the System32 directory, since IE puts it there itself.)
So after all, I've just needed to adjust my configuration a little ;~