Richard Cohen richard@daijobu.co.uk writes:
Changelog Implicitly loaded 16bit GDI & USER need an EXE extension
This is wrong, the EXE extension is present in the module filename, the loader shouldn't need to know about it. The problem is probably that GDI isn't pre-loaded, which is the case for 32-bit apps now that GDI no longer needs the local heap. What app is causing the problem?
Alexandre Julliard wrote:
The problem is probably that GDI isn't pre-loaded, which is the case for 32-bit apps now that GDI no longer needs the local heap.
That would explain it.
What app is causing the problem?
Scansoft Paperport version 6 (.5? -- there are different version numbers all over the place)
Output of +loaddll is attached
trace:loaddll:load_builtin_dll Loaded module L"kernel32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\advapi32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\gdi32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\user32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msvcrt.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\PPERR.dll" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\iphlpapi.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\rpcrt4.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\ole32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\shlwapi.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\comctl32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\shell32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winspool.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\comdlg32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\lz32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\version.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXUTIL.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXCODEC.dll" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winmm.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msvfw32.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXRAST.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXKERNL.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\PPAuthor.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\windows\system\MFC42.DLL" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\oleaut32.dll" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "krnl386.exe" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "system.drv" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "user.exe" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "keyboard.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winex11.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\imm32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\wineoss.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msacm32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msacm.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\midimap.drv" : builtin fixme:msvcrt:_setmbcp Unreal codepages (e.g. -3) not implemented trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\riched20.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\riched32.dll" : builtin fixme:ole:CoRegisterMessageFilter stub trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXNMGR.DLL" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\Maxntxt.ann" : native trace:loaddll:MODULE_FlushModrefs Unloaded module L"C:\Program Files\ScanSoft\PaperPort\Maxntxt.ann" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnhlt.ann" : native trace:loaddll:MODULE_FlushModrefs Unloaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnhlt.ann" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnhnd.ann" : native trace:loaddll:MODULE_FlushModrefs Unloaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnhnd.ann" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnbmp.ann" : native trace:loaddll:MODULE_FlushModrefs Unloaded module L"C:\Program Files\ScanSoft\PaperPort\Maxnbmp.ann" : native fixme:system:SystemParametersInfoW Unimplemented action: 34 (SPI_SETICONTITLELOGFONT) fixme:system:SystemParametersInfoW Unimplemented action: 34 (SPI_SETICONTITLELOGFONT) trace:loaddll:load_builtin_dll Loaded module L"kernel32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\advapi32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\gdi32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\user32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msvcrt.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\PPERR.dll" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\iphlpapi.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\rpcrt4.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\ole32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\shlwapi.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\comctl32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\shell32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winspool.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\comdlg32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\lz32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\version.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXUTIL.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXCODEC.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXKERNL.dll" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winmm.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msvfw32.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXRAST.dll" : native trace:loaddll:load_native_dll Loaded module L"C:\windows\system\MFC42.DLL" : native trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\oleaut32.dll" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "krnl386.exe" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "system.drv" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "user.exe" : builtin trace:loaddll:MODULE_LoadModule16 Loaded module "keyboard.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winex11.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\imm32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\wineoss.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msacm32.dll" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\msacm.drv" : builtin trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\midimap.drv" : builtin fixme:msvcrt:_setmbcp Unreal codepages (e.g. -3) not implemented fixme:ole:CoRegisterMessageFilter stub trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\wow32.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\MAXLINK3.DLL" : native Could not load 'GDI.DLL' required by 'MAXLINK', error=2 trace:loaddll:NE_FreeModule Unloaded module "C:\Program Files\ScanSoft\PaperPort\MAXLINK.DLL" : native err:thunk:_loadthunk (C:\Program Files\ScanSoft\PaperPort\MAXLINK.DLL, thk32_ThunkData16, C:\Program Files\ScanSoft\PaperPort\MAXLINK3.DLL): Unable to load 'C:\Program Files\ScanSoft\PaperPort\MAXLINK.DLL', error 2 trace:loaddll:MODULE_FlushModrefs Unloaded module L"C:\Program Files\ScanSoft\PaperPort\MAXLINK3.DLL" : native trace:loaddll:MODULE_FlushModrefs Unloaded module L"c:\windows\system\wow32.dll" : builtin trace:loaddll:load_native_dll Loaded module L"C:\Program Files\ScanSoft\PaperPort\VIZTWAIN.DLL" : native err:seh:setup_exception stack overflow 632 bytes in thread 000b eip 77ee6a3a esp 77830d88 stack 0x77830000-0x77930000 trace:loaddll:load_builtin_dll Loaded module L"c:\windows\system\winedos.dll" : builtin err:seh:setup_exception stack overflow 432 bytes in thread 0009 eip 77ee6a3a esp 77840e50 stack 0x77840000-0x77940000 ^C
Richard Cohen richard@daijobu.co.uk writes:
Alexandre Julliard wrote:
The problem is probably that GDI isn't pre-loaded, which is the case for 32-bit apps now that GDI no longer needs the local heap.
That would explain it.
What app is causing the problem?
Scansoft Paperport version 6 (.5? -- there are different version numbers all over the place)
The easiest is probably to go back to always loading GDI. Something like this should do the trick:
Index: dlls/gdi/gdi_main.c =================================================================== RCS file: /opt/cvs-commit/wine/dlls/gdi/gdi_main.c,v retrieving revision 1.17 diff -u -p -r1.17 gdi_main.c --- dlls/gdi/gdi_main.c 15 Jan 2004 00:35:40 -0000 1.17 +++ dlls/gdi/gdi_main.c 31 May 2005 14:11:46 -0000 @@ -34,6 +34,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, { if (reason != DLL_PROCESS_ATTACH) return TRUE; DisableThreadLibraryCalls(hinstDLL); + LoadLibrary16( "gdi.exe" ); return GDI_Init(); }
Alexandre Julliard wrote:
The easiest is probably to go back to always loading GDI. Something like this should do the trick:
That works for me.