Commit Graph

127 Commits

Author SHA1 Message Date
Alexandre Julliard 3be5d62b29 Moved 16-bit calls initialization and exception handling to kernel32.
Store the call_to_16 return address on the stack from the C code so
that we don't need two variants of call_to_16_regs.
2003-08-25 00:56:37 +00:00
Alexandre Julliard 9ca159b61a Moved 16-bit builtin module handling to dlls/kernel/ne_module.c. 2003-08-23 23:07:10 +00:00
Alexandre Julliard 8ca7e0af78 Added a file_exists argument to wine_dll_load to allow checking
whether a failed dll load is because the file didn't exist; more
robust than trying to guess the contents of the error string...
Get rid of BUILTIN32_dlopen.
2003-07-03 18:23:10 +00:00
Eric Pouech 675b75597b - removed next & prev fields from WINE_MODREF and implement instead
the three linked lists in LDR_MODULE
- added PEB_LDR_DATA structure to PEB
- removed a couple of no longer needed global & static variables
2003-07-01 03:38:56 +00:00
Alexandre Julliard 7c836cf954 Moved a couple of 16-bit module functions from to loader/ne/module.c. 2003-05-21 18:32:17 +00:00
Alexandre Julliard c7a51eec43 Only create the 16-bit dummy module when we need really it. 2003-05-20 02:32:26 +00:00
Alexandre Julliard c963e25c0e Get rid of the 32-bit user signal proc since we always run builtin
USER now.  Moved USER module cleanups to the 16-bit signal proc.
2003-05-15 23:11:00 +00:00
Alexandre Julliard adb532903c Rewrote module TLS support and moved it to ntdll. 2003-05-14 19:51:14 +00:00
Alexandre Julliard d9bab57477 Added support for calling the TLS callback functions. 2003-05-08 04:13:26 +00:00
Alexandre Julliard 424202bd9a Moved most of the kernel resource APIs to dlls/kernel. 2003-04-30 00:53:23 +00:00
Alexandre Julliard 39f73ddeaa Merged PE_InitDLL into MODULE_InitDLL.
Fixed a few traces.
2003-04-04 19:50:17 +00:00
Eric Pouech 1c7afd87f6 - no longer using kernel32's APIs but ntdll's
- BUILTIN32_dlopen now properly returns NTDLL style status codes
2003-03-26 01:25:19 +00:00
Eric Pouech 69dc0d93d5 Removed no longer needed MODREF.find_export field. 2003-03-21 21:27:16 +00:00
Eric Pouech 19e050eb6f Moved WINE_MODREF.flags to WINE_MODREF.ldr.Flags, and make use of the
same flags values as Win2000.
2003-03-20 23:40:08 +00:00
Eric Pouech f94c8b85b9 Move some fields (refCount, tls_index and module) from WINE_MODREF to
LDR_MODULE.
2003-03-20 22:05:26 +00:00
Eric Pouech 9b79d698b2 Moved the module loading/unloading code and the remaining needed
static variables to ntdll.
2003-03-20 04:55:59 +00:00
Eric Pouech 84d1a8ff8c - added LDR_MODULE structure to WINE_MODREF and made dummy filling of
this structure
- implementation of LdrFindEntry
- implementation of GetModuleFileName[AW] on top of LdrFindEntry
2003-03-18 18:29:13 +00:00
Eric Pouech 32872b1a57 - implementation of LdrLoadDll out of loader/module.c
- in impacted functions, ensure that we only use ntdll functions
- for internal loading, start using NTDLL style for error reporting
- making use of new LdrLoadDll
2003-03-14 05:01:20 +00:00
Eric Pouech 1efa50e47e - implementation of LdrUnloadDll out of loader/module.c
- in impacted functions, ensure that we only use ntdll functions
- making use of new LdrUnloadDll
2003-03-14 04:00:52 +00:00
Eric Pouech f3a73ef7af - implemented LdrGetProcedureAddress and made use of it for
GetProcAddress
- implemented LdrGetDllHandle and made use of it in GetModuleHandle
- removed MODULE_DllThreadDetach from loader/module.c (should have
  been removed in a previous patch)
2003-03-06 23:41:37 +00:00
Eric Pouech d4fcc4bd06 Removed SO loading type. 2003-03-05 02:50:25 +00:00
Eric Pouech 7d6096480a - added Ldr* information to include/winternl.h
- exported a few functions/global vars from module.h while we move
  code from loader/module.c to dlls/ntdll/loader.c
- implemented LdrShutdownProcess, LdrShutdownThread and
  LdrDisableThreadCalloutsForDll (and made use of them)
2003-03-04 04:36:56 +00:00
Alexandre Julliard 0eec45a97b Force loadorder of 16-bit dlls to builtin if their 32-bit counterpart
has already been loaded as builtin.
2002-08-16 20:02:54 +00:00
Alexandre Julliard befbb0e441 Make behavior of builtin executables closer to that of builtin dlls.
Fixed case sensitivity of builtin executables.
2002-08-14 21:12:58 +00:00
Alexandre Julliard a5dea216cc Implemented the RtlImage* functions, and use them to replace the
PE_HEADER macro.
2002-08-09 19:57:38 +00:00
Alexandre Julliard 267ca68253 Fixed HANDLE<->HFILE conversions, since they will be different types
when handles are void*.
2002-07-31 17:20:00 +00:00
Alexandre Julliard 891d23e57f Added support for ordinal hint in PE_FindExportedFunction. 2002-07-24 19:04:41 +00:00
Alexandre Julliard 69622dbdcc Added support for path wildcards of the form "*dllname" in load order
specifications.
Only use wildcard entry for dlls that don't specify an explicit path.
Removed the old DllOverrides syntax support.
Misc cleanups and optimizations.
2002-06-25 00:23:23 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 3536316a31 New loading scheme for Winelib apps, makes them behave like builtin
dlls and takes load order into account. Install them in dlldir.
Improved MODULE_GetBinaryType to recognize ELF binaries.
Added a wrapper script to setup the environment when running directly
from inside the source tree.
2002-05-22 21:32:49 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Bill Medland 65fc1c92d4 Added LOAD_WITH_ALTERED_SEARCH_PATH support to LoadLibraryEx. 2001-08-24 21:13:02 +00:00
Alexandre Julliard 5f728cae70 Removed HEAP_strdupA. 2001-07-24 21:45:22 +00:00
Alexandre Julliard f899ef07a6 Removed some unnecessary includes. 2001-07-23 00:04:00 +00:00
Alexandre Julliard 8ff37b8f31 Set low-order bit of module handle for LOAD_LIBRARY_AS_DATAFILE.
Cleaned up a few HMODULE/HMODULE16 mismatches.
2001-06-06 20:24:12 +00:00
Alexandre Julliard 9ee9efff1b Use the standard CreateThread routine to create 16-bit tasks instead
of duplicating the code.
2001-02-28 05:29:50 +00:00
Alexandre Julliard 8081e5a1e5 Added handle_t type to server interface so that we can make handles
pointers later on.
Always use 0 to signal invalid handle in server requests.
2001-01-05 04:08:07 +00:00
Alexandre Julliard becb9a353b Moved all Wine internal definitions out of process.h. 2000-12-11 03:48:15 +00:00
Alexandre Julliard 6170666f25 Moved useful NE format definitions to winbase16.h. 2000-12-01 21:31:02 +00:00
Alexandre Julliard e087508f57 Moved builtin dll registration to libwine.
Changed process initialization to not load imported dlls too early.
2000-11-08 04:33:20 +00:00
Andreas Mohr cabee39f3c Free the Win16 dummy module and wm->deps. 2000-10-25 21:22:27 +00:00
Alexandre Julliard 0e236a1f37 Removed GetResDirEntryA/W. 2000-10-24 21:35:14 +00:00
Alexandre Julliard 81800b1f6d Use a binary search to find entries in resource directories.
Fixed GetResDirEntryA/W prototypes.
2000-10-19 20:29:53 +00:00
Alexandre Julliard 83f52d11c1 Moved all Win16 definitions out of the standard Windows headers. 2000-09-26 22:20:14 +00:00
Dmitry Timoshkov 05c88fa664 Make FindResource and FindResourceEx fully windows compatible. 2000-08-11 12:50:56 +00:00
Alexandre Julliard 32936f0e48 Fixed resource functions to work with 32-bit modules that don't have a
16-bit counterpart (necessary for LOAD_LIBRARY_AS_DATAFILE support).
2000-08-07 23:50:00 +00:00
Alexandre Julliard 081ee94117 - Fixed resource functions to work directly from the HMODULE instead of
requiring a modref.
- Attempted to get LOAD_LIBRARY_AS_DATAFILE right (based on patches by
  Eric Pouech and Dusan Lacko).
- Simplified modref structure and handling.
2000-08-07 04:12:41 +00:00
Ove Kaaven 660b5105af Removed DOS task fields from the NE_MODULE structure. 2000-07-31 23:22:55 +00:00
Alexandre Julliard a37dec0c7e Pass the main exe name in the CREATE_PROCESS debug event. 2000-06-08 00:57:24 +00:00
Alexandre Julliard c192ba2468 Exec a separate wine binary for every win32 process so that they run
in separate address spaces.
Run 16-bit tasks as Win32 threads, not processes.
2000-05-29 21:25:10 +00:00