Commit Graph

1050 Commits

Author SHA1 Message Date
Alexandre Julliard 5980477dcc Fetch the exe module directly from the PDB instead of calling
LdrGetDllHandle.
2003-04-05 05:13:33 +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 69dc0d93d5 Removed no longer needed MODREF.find_export field. 2003-03-21 21:27:16 +00:00
Eric Pouech 7b91b82680 Rewrote mapping of module into memory using only NTDLL APIs. 2003-03-21 00:46:08 +00:00
Alexandre Julliard 195574e2d8 Added memcpy_unaligned to libwine_port. 2003-03-20 23:44:36 +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
Alexandre Julliard 500a2f95f7 Partially implemented LdrLock/UnlockLoaderLock. 2003-03-20 04:29:21 +00:00
Alexandre Julliard 03e4ea1789 Make GetModuleFileNameA call GetModuleFileNameW. Small cleanups. 2003-03-18 20:07:12 +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
Alexandre Julliard 803b5686ef Cleaned up load_library_as_datafile(). 2003-03-14 23:17:45 +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 60d40cd246 Only do the unload_dll server call at the time we actually unload the
dll.
2003-02-28 21:52:08 +00:00
Alexandre Julliard ce13153821 Moved LDT selector allocation routines to libwine.
Added support for correct locking of all LDT operations.
Added separate functions to manipulate the %fs selector, which allows
using a global GDT selector on recent Linux kernels.
2003-02-26 20:34:45 +00:00
Alexandre Julliard ac13d2f47e Print thread ids in traces with only 4 digits now that they are small
integers.
2003-02-18 23:29:47 +00:00
Alexandre Julliard 851d25d977 Set default loadorder to native for dlls that contain an explicit
path.
2003-02-17 01:49:47 +00:00
Warren Baird 39f73a2203 Increase size of insufficiently big stack allocated buffer used for
error messages in ELF_LoadLibraryExA.
2003-02-12 01:17:55 +00:00
Rein Klazes 33be954e62 In PE_fixup_imports report "module file not found" only in case of a
"file not found" error. Otherwise report failure and error number.
2003-02-11 22:21:24 +00:00
Matthew Davison 60009b9a56 Removed calls to HEAP_strdupAtoW. 2003-01-23 23:07:38 +00:00
Dimitrie O. Paun 297f3d898d Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them. 2003-01-07 20:36:20 +00:00
Alexandre Julliard bcf41605d2 Debug channels cleanup. 2002-12-17 21:09:50 +00:00
Alexandre Julliard df357055e2 Don't crash in DirectedYield16 if no other task is running. 2002-12-13 00:39:17 +00:00
Dimitrie O. Paun 737d4be892 Move excpt.h out of include/msvcrt/ as it does not conflict with any
standard Unix header.
2002-12-12 23:34:01 +00:00
Alexandre Julliard 309b37023d Also trace implicitly loaded dlls for +loaddll. 2002-12-12 22:05:22 +00:00
Patrik Stridvall 75dee506ae Replace 0x%p with %p. 2002-12-05 19:56:15 +00:00
Alexandre Julliard 9169729b0b Merged font.h and path.h into gdi.h. Moved x11font.h to
dlls/x11drv. Removed a number of unnecessary #includes.
2002-12-03 19:18:41 +00:00
Alexandre Julliard 11f361a29c Removed no longer needed PROFILE_LoadWineIni(). 2002-11-23 02:24:53 +00:00
Andrew John Hughes ed800c69c8 Build ntdll with -DSTRICT. 2002-11-21 03:45:01 +00:00
Alexandre Julliard 82aeebd783 Added wrapper to replace llseek+lread to avoid HANDLE/HFILE
conversions.
2002-11-21 00:04:01 +00:00
Jukka Heinonen 1a665058e8 Removed last users of msdos/interrupts.c. 2002-11-21 00:02:09 +00:00
Eric Pouech d09b9ccb39 Don't fully process FreeLibrary when process is stopping. 2002-11-15 04:14:27 +00:00
Patrik Stridvall cf07e10017 Don't use wine/unicode.h in the header files, include it directly
where needed instead.
2002-10-23 20:20:59 +00:00
Patrik Stridvall 1298eb4053 Fixed mismatches between the Wine headers and the Microsoft headers. 2002-10-23 18:50:10 +00:00
Alexandre Julliard f3215eba4a Get/SetFastQueue16 should use HQUEUE16 handles. 2002-10-19 17:20:44 +00:00
Alexandre Julliard 9534d4f0fe Added wine_memcpy_unaligned function to avoid gcc memcpy
optimizations.
2002-10-18 00:27:38 +00:00
Alexandre Julliard c5c48eb677 Fixed reference count handling to support LoadLibrary during a process
attach.
2002-10-15 02:25:19 +00:00
Alexandre Julliard 613ead7f0f Fixed some handle conversions in prevision of void* handles. 2002-10-04 00:27:10 +00:00
Dimitrie O. Paun e70d08be31 By default, we should use our own dlls. 2002-09-25 00:16:52 +00:00
Patrik Stridvall b5bb32c09a Fixed some issues found by winapi_check. 2002-09-24 18:29:39 +00:00
Michael Stefaniuc 9d2b862883 Convert HRSRC to a void*. 2002-09-16 22:47:05 +00:00
Alexandre Julliard 81bdcf126f Removed references to advapi32 registry functions from some of the
kernel functions.
2002-09-13 17:47:44 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Patrik Stridvall 51e6c0ccb1 MSVC compatibility fixes. 2002-08-31 19:04:14 +00:00
Alexandre Julliard 3fa613cf61 Moved internal context macros out of winnt.h.
Added SET_AX etc. macros to avoid non-portable pointer manipulations.
2002-08-31 18:47:00 +00:00
Patrik Stridvall 9aab47ed24 MSVC compatibility fixes. 2002-08-28 23:42:34 +00:00
Mike McCormack f5d21eb2bf Don't cache file handles for NE executable modules so that we don't
lock the CDROM.
2002-08-27 02:05:21 +00:00
Dmitry Timoshkov d75aed2c92 Convert most of the file APIs to Unicode. 2002-08-27 01:13:58 +00:00
Dmitry Timoshkov 1467bbd5a4 Relax a bit PE consistency checks.
Return BINARY_DOS type if extended header was not recognized.
2002-08-27 00:34:41 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +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
Dmitry Timoshkov 10cd651ef3 Set up exception handler around WEP call. 2002-08-16 01:44:21 +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 526531eb6c Create at most one glue file for a single dll.
Avoid the intermediate .tmp.o file when building programs.
2002-08-01 18:36:58 +00:00
Alexandre Julliard 7375597fe2 Fixed some handle type mismatches and added a few casts in prevision
of void* handles.
2002-07-31 19:26:03 +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 29f265fab1 Set the correct permissions on the PE image sections. 2002-07-29 23:59:26 +00:00
Alexandre Julliard 13f2a17eb2 Convert HTASK to void* (based on a patch by Michael Stefaniuc). 2002-07-28 23:48:27 +00:00
Alexandre Julliard 891d23e57f Added support for ordinal hint in PE_FindExportedFunction. 2002-07-24 19:04:41 +00:00
Alexandre Julliard 7015ce3096 No need to call GetModuleFileName16 now that GetModuleFileNameA
handles 16-bit tasks.
2002-07-05 01:28:10 +00:00
Alexandre Julliard 83886f23fa Fixed GetModuleFileNameW return value.
Quiet dll loading error message.
2002-07-05 01:27:19 +00:00
Joshua Thielen 1cef2974ab Changed GetModuleFileNameA to use GetCurrentTask instead of
MODULE32_LookupHMODULE when called by a 16-bit task.
2002-07-05 00:16:41 +00:00
Alexandre Julliard 958732d21c Fixed warnings. 2002-07-02 02:09:39 +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
Alexandre Julliard bc524e92d2 Avoid loading programs into the DOS memory area. 2002-06-20 22:54:26 +00:00
Alexandre Julliard 2ad28d62d7 Don't go through the export table if we are not tracing anything. 2002-06-13 21:54:12 +00:00
Alexandre Julliard 221b438287 Don't free the stack selector, it's freed in ExitThread anyway (thanks
to Christian Costa).
2002-06-04 17:55:48 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 55e845d11b Removed most inclusions of options.h.
Removed a few no longer used PROFILE_* functions.
2002-05-23 19:40:18 +00:00
Alexandre Julliard 7fbd74ea55 Replaced the GET/PUT_UA macros by memcpy. Fixed a few big-endian
issues.
2002-05-23 02:53:10 +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
Francois Gouget 2204b50a95 Fixed the WinExec prototype. 2002-05-19 22:21:45 +00:00
Alexandre Julliard 0aa28b5b8d Export the debugging API from libwine instead of ntdll.
Removed debugres_[aw].
2002-05-17 02:55:48 +00:00
Alexandre Julliard 9bb05fc48e Specify the complete source file list for a dll inside the main
makefile and get rid of the subdirectories makefiles.
2002-05-14 18:36:54 +00:00
Andreas Mohr 01c8ec3a9c Spelling/error messages fixes. 2002-04-02 19:47:30 +00:00
Eric Pouech cb934a116a Removed a couple of now obsolete FIXMEs. 2002-04-01 21:03:30 +00:00
Alexandre Julliard c4912ecd5f Don't strip out .exe extension. 2002-03-28 22:06:56 +00:00
Alexandre Julliard 6db8abaf93 Removed service thread support. 2002-03-23 20:46:41 +00:00
Alexandre Julliard 55ce53d5d7 Properly handle loadorder specifications containing a .dll extension. 2002-03-22 01:01:09 +00:00
Alexandre Julliard aeb566052f Correctly fill parent pid, module size and module name in process and
module snapshots. Based on patches by Eric Pouech and Andreas Mohr.
2002-03-22 00:21:23 +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
Peter Hunnisett 73ab649ced New file msvcrt/excpt.h. Move some stuff out of winnt.h into it. 2002-02-25 20:10:35 +00:00
Patrik Stridvall 57e5784c21 Move __stdcall/__cdecl to the right place. 2002-02-02 18:42:11 +00:00
Alexandre Julliard 64781643dd Do not use the PEB lock as loader lock, use a separate critical
section for that (and for the graphics drivers).
2002-02-02 18:13:50 +00:00
Alexandre Julliard cd3afa895b LOAD_LIBRARY_AS_DATAFILE modules must be mapped like normal files, not
like PE images. Fixed resource loading to handle that.
2002-01-31 23:32:57 +00:00
Bill Medland ca5b201310 Prevent trying to handle uninitialised memory as a string. 2002-01-18 18:58:08 +00:00
Alexandre Julliard 7c822cc0dc Removed obsolete dosmod. 2002-01-06 18:38:45 +00:00
Alexandre Julliard 193cf50a09 Removed some of the calls to HEAP_strdup* functions. 2002-01-01 00:24:30 +00:00
Alexandre Julliard d7b76822ef Use MapLS/UnMapLS instead of SEGPTR_* macros. 2001-12-20 00:19:40 +00:00
Alexandre Julliard 9fcd89a5d8 Removed unnecessary includes. 2001-12-17 22:12:23 +00:00
Alexandre Julliard 8eeed94f5f Export DestroyIcon32 from user32 and use GetProcAddress to call it
from FreeResource16.
2001-12-17 21:40:56 +00:00
Andrew Lewycky ffc9df2d0c do_relocations: process relocation blocks with a VirtualAddress of 0,
stop once SizeOfBlock == 0.
2001-11-30 23:08:02 +00:00
Alexandre Julliard 9caa71eef4 Redesign of the server communication protocol to allow arbitrary sized
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Eric Pouech 0b83d4cbc6 New console code based on Win32 windows. 2001-11-23 23:04:58 +00:00
Dmitry Timoshkov 6b6596a1e3 Fixed packing and layout of many system structures. 2001-11-23 18:44:43 +00:00
Francois Gouget 070e749cfb Don't prefix %p with 0x.
Various English fixes.
2001-11-06 21:01:32 +00:00
François Gouget 1425941e29 Fix the #include order for config.h.
Add #include "config.h" directives where needed.
2001-11-06 20:57:11 +00:00
Alexandre Julliard ac2e4f1e3d Don't keep main exe and dlls handles open when the file is on
removable media.
2001-10-25 19:52:12 +00:00
Francois Gouget 386cf6e342 When including 'wine/port.h', include it first.
Remove redundant 'config.h' includes.
2001-10-14 16:25:47 +00:00
Francois Gouget e5ddd26dd7 When including config.h, include it first. 2001-10-14 16:18:52 +00:00
Francois Gouget b60c4ce0f0 Don't print NULL strings (crashes on Solaris).
Small code maintainability tweak in ShellExecuteExA.
Two typo fixes in winmm.
2001-10-14 16:15:05 +00:00
Andreas Mohr f359895daf Yet another documentation/message text patch. 2001-10-02 17:49:20 +00:00
Francois Gouget 9dc5b97b35 Only use winsock2.h in Wine. 2001-08-28 18:39:03 +00:00
Bill Medland 65fc1c92d4 Added LOAD_WITH_ALTERED_SEARCH_PATH support to LoadLibraryEx. 2001-08-24 21:13:02 +00:00
Josh Thielen 378fc22b4a Wrong handle was being closed. 2001-08-11 18:24:01 +00:00
Jörg Mayer e5b5af9d66 Fixed a few signed/unsigned and "unsigned < 0 always true" warnings. 2001-08-10 22:49:35 +00:00
Eric Pouech 624cbd7c47 Fixes for Solaris X86. 2001-08-10 22:29:21 +00:00
Andreas Mohr da920ee9b9 Spelling fixes. 2001-08-09 21:16:55 +00:00
Alexandre Julliard 7c4b14031e Fixed HTASK/HTASK16 handle mismatch. 2001-07-30 19:01:01 +00:00
Patrik Stridvall 2344798c46 Fixed some warnings. 2001-07-26 21:44:44 +00:00
Alexandre Julliard 5edf4e1cef Removed a few unnecessary Callouts. 2001-07-26 20:12:54 +00:00
Alexandre Julliard 1922c72b8a Removed unnecessary inclusion of heap.h. 2001-07-25 00:43:29 +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 37e9503ae8 Moved server.h to include/wine. 2001-07-19 00:39:09 +00:00
Patrik Stridvall 33929be46f - Made sure that the files that contains the declarations
of implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-18 21:04:23 +00:00
Alexandre Julliard ca4fa36584 Don't call SNOOP_RegisterDLL on builtins. 2001-07-12 02:46:55 +00:00
Patrik Stridvall 044855c6ec Documentation fixes. 2001-07-11 18:56:41 +00:00
Patrik Stridvall 01d5e5b071 Documentation fixes. 2001-07-02 19:59:40 +00:00
Alexandre Julliard ed2f19a63f Put AC_DEFINE symbols definitions directly in the configure script so
that we no longer need an acconfig.h. Cleaned up dlopen() tests a bit.
2001-06-27 21:42:00 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Patrik Stridvall dae8de69e2 Documentation ordinal fixes (using winapi_fixup). 2001-06-13 20:13:18 +00:00
Alexandre Julliard 0ca9465f58 Removed unneeded inclusion of queue.h. 2001-06-07 22:29:33 +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
Andreas Mohr c2bc22b91c Spelling fixes. 2001-05-24 18:44:25 +00:00
Andreas Mohr 9abd5530c8 Make snoop code take ordinal base into account. 2001-05-24 18:43:16 +00:00
Alexandre Julliard a67e6486df Removed THREAD_IsWin16. 2001-05-18 23:21:22 +00:00
Marcus Meissner 3f1ed52d8b Implemented 64bit file size handling.
Removed several unneeded sys/stat.h includes.
2001-05-14 20:09:37 +00:00
Alexandre Julliard 2418edb101 Really free the memory on dll unload. 2001-05-10 19:17:54 +00:00
Francois Gouget e17d1a3649 Print the tid in the first column when +tid is specified. 2001-05-08 00:13:38 +00:00
Alexandre Julliard c9cf68d91b Uncommented the VirtualFree call on dll unload. 2001-05-02 01:12:27 +00:00
Ove Kaaven 10b3402c43 Let LOAD_LIBRARY_AS_DATAFILE load the builtin dll if loading a native
DLL failed, so that winesetuptk's fake-windows installation work.
2001-04-16 19:32:48 +00:00
Alexandre Julliard 2ec34e48a3 Added TASK_GetPtr/TASK_GetCurrent functions to get the TDB for a task
handle.
2001-04-04 00:21:05 +00:00
Alexandre Julliard 3e7497f20e Unified 16-bit and 32-bit scheduling a bit more. 2001-04-04 00:19:55 +00:00
Alexandre Julliard 627c9073c7 Don't load user32 too early on for 16-bit apps, so that app-specific
config can be available while loading it.
2001-03-28 18:47:05 +00:00
Alexandre Julliard fde1b0cb0c Added "*" wildcard entry to DllOverrides to replace DllDefaults
section; this way it can also be specified on a per-app basis.
Removed compiled-in defaults for dlls mentioned in the sample config.
Update man page.
2001-03-21 20:33:11 +00:00
Alexandre Julliard 671da9f08e Disable DONT_RESOLVE_DLL_REFERENCES for builtin dlls. 2001-03-21 03:38:44 +00:00
Dmitry Timoshkov b77afe76b1 Allow loading of built-in dlls with LOAD_LIBRARY_AS_DATAFILE flag set. 2001-03-21 03:38:03 +00:00
Alexandre Julliard b9c9cdc5d4 - Added support for app-specific dll overrides using
AppDefaults\<appname>\DllOverrides configuration section.
- Better support for multiple --dll options.
- Added warning message to discourage putting multiple dlls in a
  single override entry.
2001-03-20 02:11:08 +00:00
Francois Gouget 3d0589ae7d Fixed spelling/typos in comments. 2001-03-10 19:15:49 +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 67a749999a New set of macros for server calls; makes requests without variable
part somewhat faster.
2001-02-27 02:09:16 +00:00
Alexandre Julliard ea2a9a8974 Removed a few Callout functions by doing a GetProcAddress at the time
we actually need the function.
2001-02-20 00:55:17 +00:00
Patrik Stridvall 0c61028734 Documentation ordinal fixes. 2001-01-25 22:22:21 +00:00
Jon Griffiths 4ab1558d8a - Remove <string.h> from winnt.h.
- ntdll: complete crt functions, prevent libc imports, fix sscanf.
2001-01-22 02:17:29 +00:00
Gerard Patel ad8ef99f57 Fix the cmdline argument passed to NE_CreateThread to include string
length.
2001-01-21 21:09:44 +00:00
Alexandre Julliard 3556e1f87d Display the importing dll in the 0xdeadbeef message. 2001-01-20 02:51:19 +00:00
Ulrich Weigand 16a9a2d730 Don't call a NE DLL's DllEntryPoint twice during one single
LoadModule() call.
2001-01-15 22:20:50 +00:00
Alexandre Julliard 4f2df51f7a Replaced GLOBAL_Alloc by GlobalAlloc16 where possible. 2001-01-15 20:13:43 +00:00
Alexandre Julliard 7d5bc5c3f9 Removed some direct accesses to the 16-bit task structure. 2001-01-15 20:09:09 +00:00
Jon Griffiths 1db20bfd33 - Migrate CRTDLL to MSVCRT.
- Many fixes and a load of new functions.
2001-01-10 23:59:25 +00:00
Gerard Patel a77fd7df9d Added a specific debug channel for dll loading (builtin/native). 2001-01-10 22:54:02 +00:00
Alexandre Julliard 105b0f4e64 Use the exe name and file handle we got from the server also when
starting Win16 or DOS programs, to avoid depending on the contents of
the command-line.
2001-01-06 01:55:49 +00:00
François Gouget da2b6a9f26 Fixed some HFILE vs. HANDLE mismatches.
If not used the last parameter of CreateFile must be 0, not -1.
2001-01-06 01:29:18 +00:00
Eric Pouech c4c7324c45 Forced loading of msacm32 when msacm is loaded.
Added msacm DLL pair in config files.
Added some dumb calls from 16 to 32.
2001-01-06 01:23:11 +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
Ulrich Weigand acefd16bee Prevent unaligned access to NE in-memory module data. 2000-12-29 05:09:15 +00:00
Ulrich Weigand cc195924a6 Added check whether unaligned memory access is allowed.
Added macros to access unaligned WORDs / DWORDs.
2000-12-27 04:18:26 +00:00
Ove Kaaven e5557b357a Separated the MZ loader and core DOS VM into dlls/winedos. 2000-12-26 00:22:45 +00:00
François Gouget 55146dbe18 Fixed a few type clashes in preparation for the switch to STRICT. 2000-12-24 20:33:01 +00:00
Alexandre Julliard e441d3c4e1 No longer try to load builtin library when loadorder is 'so'. 2000-12-22 22:50:12 +00:00
Alexandre Julliard d549f6909e Use a separate FIFO pair for server requests that don't need to pass a
file descriptor.
Associate file descriptors with handles on the server side so that we
don't need to pass the fd every time the client wants to use it.
2000-12-22 02:04:15 +00:00
Alexandre Julliard 5801723b50 Replaced WIN16_GlobalLock16 by "official" function K32WOWGlobalLock16. 2000-12-22 01:09:26 +00:00
Alexandre Julliard 014a8bb1e3 Do not call thread attach/detach routines during process exit to avoid
potential deadlocks.
2000-12-20 18:41:34 +00:00
François Gouget 5e5c52d477 DUMMYSTRUCTNAME2 creates a conflict when using anonymous union names. 2000-12-19 23:31:52 +00:00
Ulrich Weigand 975914003b Fixed IMAGE_RESOURCE_DIRECTORY_ENTRY on big-endian machines. 2000-12-19 03:38:53 +00:00
François Gouget 807b04513a Changed the type of Function to PDWORD as on Windows. 2000-12-15 20:53:39 +00:00
James Abbatiello e675887129 Work around glibc 2.1.x dlopen bug (again). 2000-12-13 21:32:55 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard 751625e089 Got rid of main.h. 2000-12-12 00:50:19 +00:00
Alexandre Julliard a67369ea00 Changed LoadImage16 to take an LPCSTR instead of a SEGPTR. 2000-12-12 00:48:06 +00:00
Alexandre Julliard becb9a353b Moved all Wine internal definitions out of process.h. 2000-12-11 03:48:15 +00:00
Alexandre Julliard 84f91bd3fc Removed no longer used elfdll loader. 2000-12-09 03:25:34 +00:00
Alexandre Julliard 886604c715 Always pass lower-case filenames to wine_dll_load().
Clear dlerror() before and after calls to dlopen/dlsym to work around
a glibc bug (thanks to James Abbatiello for tracking the bug).
2000-12-05 21:17:59 +00:00
Andreas Mohr 8c91b080b7 Better error message for forwards. 2000-12-05 21:11:35 +00:00
Aric Stewart e4d09327ef Added ASCII-only version of toupper, tolower, strcasecmp and the like
for file and module I/O.
2000-12-03 03:14:29 +00:00
Patrik Stridvall 697bf65e3e Added/modified documentation for function arguments. 2000-12-02 23:44:59 +00:00
Patrik Stridvall 2b3aa616e8 Added/modified documentation for function arguments. 2000-12-01 23:58:28 +00:00
Patrik Stridvall b5e5555c7c Fixed Win16 documentation not fixed because of a bug in winapi_check. 2000-12-01 23:54:51 +00:00
Patrik Stridvall 7a4e599780 Fixed some issues found by winapi_check. 2000-12-01 23:53:46 +00:00
Alexandre Julliard ef57e18f99 Removed some unnecessary includes. 2000-12-01 21:32:55 +00:00
Alexandre Julliard 7afce0e6d6 Moved the few remaining functions in wprocs.dll to kernel.dll.
No longer load wprocs.dll unconditionally.
Restored default interrupt handler behavior (reported by Andreas Mohr).
2000-12-01 21:25:31 +00:00
Alexandre Julliard 32fcfc24ae Removed "elfdll" load order option and updated documentation. 2000-11-30 01:15:30 +00:00
Alexandre Julliard e296bf3717 Renamed CallTo16* functions to wine_call_to_16* and export them from
kernel32.spec.
2000-11-29 19:39:30 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00
Alexandre Julliard 256ac22dee Display the name of the function when import failed. 2000-11-27 22:03:46 +00:00
Alexandre Julliard 5ce902b0b9 Implemented DosFileHandleToWin32Handle, Win32HandleToDosFileHandle and
DisposeLZ32Handle and use them to replace file.c internal functions.
Renamed WOW* functions into K32WOW*.
2000-11-27 21:59:08 +00:00
Alexandre Julliard ac7efef3b5 Changed GetProcAddress16 and 16-bit resource functions to take normal
pointers instead of SEGPTRs.
Removed WIN16_GetTempDrive.
2000-11-27 21:54:01 +00:00
Andreas Mohr fc2c5dfb3d Implemented TerminateApp needed for DBase 5.0.
Made FatalAppExit16 honor the SEM_NOGPFAULTERRORBOX error_mode flag.
2000-11-27 01:36:24 +00:00
Hidenori Takeshima 5b21807946 Replaced u_char/u_short/u_long by BYTE/WORD/DWORD for increased portability. 2000-11-26 22:35:53 +00:00
Alexandre Julliard ab687979fd Moved standard syslevel APIs declaration to winbase.h.
Use exported syslevel function wherever possible.
Moved SEGPTR declaration to windef16.h.
2000-11-15 23:41:46 +00:00
Alexandre Julliard 914406f854 Moved LDT handling to libwine.so. Changed the interface to use the
exported LDT_ENTRY structure.
2000-11-14 01:54:49 +00:00
Alexandre Julliard 0a8114c152 Raise an exception for unimplemented 16-bit entry points too.
Added check for duplicate names in 16-bit spec files.
2000-11-12 03:45:55 +00:00
Francois Gouget da0acca7d8 Use DUMMYxxxNAME for anonymous struct/unions. 2000-11-10 22:34:39 +00:00
Alexandre Julliard 3e38431ef5 Don't strip the library extension if it's not ".dll". 2000-11-09 20:28:44 +00:00
Alexandre Julliard 4e951ea25b Check all Callouts function pointers for NULL before using them.
Don't load USER dll if not needed by the application.
2000-11-08 22:47:53 +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 786c9a68f6 Get ELF_LoadLibraryExA back into a working state. 2000-11-06 05:26:27 +00:00
Alexandre Julliard 908464d448 Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
Various warning fixes.
2000-11-01 03:11:12 +00:00
Dimitrie O. Paun 334a42f521 Fixed a few compilation warnings 2000-10-29 18:07:04 +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
Patrik Stridvall a9f6a9daec Explicitly initialize structures. 2000-10-24 02:22:16 +00:00
Uwe Bonnes 38012a5604 Pass the correct hFile to PE_CreateModule. 2000-10-19 22:27:23 +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
Andreas Mohr 49851f88e3 Back out my ELFDLL_dlopen patch and add a warning for future misguided
hackers.
2000-10-19 20:25:02 +00:00
Ove Kaaven 7c4bee569c Implemented DOS INT21 AH=4B (EXEC). 2000-10-17 00:33:02 +00:00
Ove Kaaven d94b631947 Fixed a couple of recent bugs, and added some more safeguards (could
be handy for portability anyway) and trace statements.
2000-10-15 00:41:08 +00:00
Andreas Mohr 1563abe8ec - stupid spelling fixes
- some more loadorder array work
2000-10-13 20:26:52 +00:00
Ove Kaaven dfa4130804 Merged DOSVM_Int with DOSVM_SimulateInt, and made it handle apps that
purposefully shuffle the interrupt vectors around.
2000-10-13 20:14:49 +00:00
Andreas Mohr 6a2a2ebc71 Make sure that we skip tasks with missing hInstance. 2000-10-02 22:16:34 +00:00
Andreas Mohr 6d52787f73 Beautified the loadorder array (group DLLs according to functionality,
add group header comments, ...), added builtin x11drv and winaspi.
2000-10-02 03:33:51 +00:00
Alexandre Julliard afb49ead82 Moved a bunch of routines to kernel32.dll (with the help of
Dimitrie O. Paun).
2000-09-29 20:48:04 +00:00
Alexandre Julliard 15bfcd0398 Moved $(MODULE).o rule out of Make.rules into the individual
Makefiles.
2000-09-29 00:28:25 +00:00
Dmitry Timoshkov 4ca7e6343f Avoid crashes if 16-bit module handle was passed to the 32-bit
resource enumerator.
2000-09-26 00:39:06 +00:00
Alexandre Julliard 74af67ef42 Removed shell.h. Cleaned up the nested includes mess in wine/obj_*.h. 2000-09-26 00:00:55 +00:00
Alexandre Julliard d8fab2e67c Removed some of the XXX_reg macros now that we are using the standard
CONTEXT86 structure everywhere.
2000-09-25 23:53:07 +00:00
Alexandre Julliard 072dfb57e3 Removed inclusion of wine/winestring.h from winbase.h and added it to
the C files that need it.
2000-09-25 23:30:56 +00:00
Alexandre Julliard 770eb51ed5 Moved most global data out of the LPDOSTASK structure.
Allocate DPMI real-mode segments globally at startup.
Try to allocate DOS memory at address 0.
2000-09-24 20:47:50 +00:00
Andreas Mohr 7096384d14 Fixed WinExec16 to handle quoted filenames correctly. 2000-09-22 22:08:28 +00:00
Ulrich Weigand a761e3dad0 Modified CallTo16Register routines to update register context after
call returns. Callers adapted.
2000-09-13 20:29:44 +00:00
Andreas Mohr c4a264428b Fixed NE_LoadExeHeader error handling. 2000-09-10 03:14:36 +00:00
Eric Pouech 208955cada Fixed loader - broken search for already loaded modules. 2000-09-10 03:14:00 +00:00
Patrik Stridvall 6e740b5b46 Fixed some issues found by winapi_check. 2000-09-04 20:21:06 +00:00
Alexandre Julliard 92643003cf Converted a lot of server requests to the new exception handling
mechanism.
2000-08-31 01:59:51 +00:00
Alexandre Julliard 9c2370bd75 Added exception handling wrapper to a number of server requests.
Changed a few requests to use the new vararg mechanism.
2000-08-30 00:00:48 +00:00
Peter Ganten c7c4246a99 - Always store the full path name of 32bit modules in WINE_MODREF
- Add the possibility to use path names with the --dll command line
  option
- Add the possibility to use the --dll command line option several
  times.
- Note: The colon-sign is now exchanged with the plus-sign, as it is
  part of dos path names.
2000-08-28 21:33:28 +00:00
Alexandre Julliard 7bbba4f9ce Removed calls to ConvertToGlobalHandle and MakeCriticalSectionGlobal. 2000-08-26 21:18:36 +00:00
Andreas Mohr 349655636b - made the MIDI sequencer error message much better for confused users
to be found on #WineHQ
- use strerror instead of errno at important places
- got rid of HAVE_STRERROR macro
- removed some #include:s (hopefully I didn't break anything)
2000-08-26 20:31:48 +00:00
Andreas Mohr 62f3eaa782 Transform every ERR() to WARN() in MakeProcInstance. 2000-08-21 20:16:26 +00:00
Dusan Lacko 9f6d4bc0be Pass the type/name as a C string instead of an
IMAGE_RESOURCE_DIR_STRING_U structure to the callback function.
2000-08-20 03:32:57 +00:00
Niclas Karlsson MATE 1918601e4c WATCOM compiled programs leave VirtualSize to zero which triggers the
virus check. Use SizeOfRawData instead.
2000-08-16 12:54:03 +00:00
Alexandre Julliard a257ba245a Avoid going past the end of the relocation section. Skip sanity checks
for empty relocation blocks.
2000-08-16 12:46:09 +00:00
Alexandre Julliard c19e1a7e19 Implemented SEC_IMAGE mappings and shared PE sections (with the help
of Peter Ganten).
2000-08-14 20:20:01 +00:00
Alexandre Julliard dcd247e55f Moved CharUpper* and CharLower* functions to dlls/user. 2000-08-14 17:39:15 +00:00
Alexandre Julliard c7e7df8b17 Replaced all lstr* calls from inside Wine code by their str* equivalent. 2000-08-14 14:41:19 +00:00
Alexandre Julliard 198746d812 Replaced global Callbacks structure by appropriate glue code
generation. Removed a few unused entries in the Callout structure.
2000-08-14 14:29:22 +00:00
Dmitry Timoshkov 05c88fa664 Make FindResource and FindResourceEx fully windows compatible. 2000-08-11 12:50:56 +00:00
Alexandre Julliard 52900c818f Make PDB, ENVDB and STARTUPINFO global variables.
Added 'module' field in PDB, and removed Wine-specific fields.
2000-08-09 22:33:42 +00:00
Alexandre Julliard 231674d824 Removed the DOS handles table from the PDB and made it a static
variable.
2000-08-09 22:30:18 +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
Peter Ganten b9f350b517 Set up exe_modref before loading implicitly linked dlls. 2000-08-07 17:10:20 +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
Alexandre Julliard cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +00:00
Alexandre Julliard 93652e1a68 Moved a bunch of functions out of libwine/kernel/gdi into USER. 2000-08-04 04:21:02 +00:00
Peter Ganten 44d0d1907e WinExec16 should not split quoted filenames with spaces. 2000-08-01 20:55:22 +00:00
Ove Kaaven e3d70795ff Fixed another non-Linux build failure. 2000-08-01 20:52:20 +00:00
Alexandre Julliard 15aef00f29 Skip quoted program name when building command line. 2000-07-31 21:02:53 +00:00
Alexandre Julliard fd8a6de90a Backed out FindResource language patch. 2000-07-31 20:59:59 +00:00
Ove Kaaven 6200a48b70 Fixed a few problems. 2000-07-31 20:58:31 +00:00
Ove Kaaven 7248d47fd2 Convert DOS (MZ) binary loader to the new DOS process model. 2000-07-31 20:56:28 +00:00
Alexandre Julliard 946a4448af Cleaned up a few USER dependencies. 2000-07-30 13:50:27 +00:00
Ove Kaaven e3b353e220 Removed hModule parameter from MZ_AllocDPMITask(), and renamed
MZ_KillModule() to MZ_KillTask().
2000-07-30 13:41:13 +00:00
Ove Kaaven 3bbd167a46 Removed usage of obsolete pModule->lpDosTask. 2000-07-30 13:27:08 +00:00
Alexandre Julliard 58d5a0a786 Removed some unnecessary inclusions of wingdi.h and winuser.h 2000-07-29 21:58:17 +00:00
Alexandre Julliard 0aa6cc298e Removed a few external dependencies from ntdll. 2000-07-29 21:56:59 +00:00
Ove Kaaven d5cab2a058 Added support for the Win32 Console interface to the main DOSVM event
loop. Cleaned up event dispatching code a bit.
2000-07-29 14:34:45 +00:00
Ove Kaaven a9c19f0710 Let Int09 routines remember a keystroke's ASCII code, if available. 2000-07-29 11:30:28 +00:00
Dmitry Timoshkov f1fd89db42 FindResourceExA/W should search for the specified language resource only.
FindResourceA/W should search for any language resource.
2000-07-29 00:01:57 +00:00
Ove Kaaven 7b49914afc Removed the hModule parameter from various DOSMEM routines, the DOSMEM
routines now always use the current memory space.
2000-07-28 22:23:59 +00:00
Alexandre Julliard 99e1e8106c Return the proper error code when a 16-bit task failed to start
(thanks to Peter Ganten).
2000-07-26 18:03:43 +00:00
Andreas Mohr b021fe2911 Added detection code for very old Windows (1.1, 2.0, ...) binaries to
MODULE_GetBinaryType().
2000-07-26 18:02:28 +00:00
Dave Pickles a64603d3d6 Improved FormatMessage:
- Added full support for FORMAT_MESSAGE_FROM_SYSTEM
- Implemented language search as documented
- Illegal combinations of options trapped.
- Message table for system messages added.
2000-07-25 17:53:58 +00:00
Alexandre Julliard b18dbd26c5 Perform NE_InitProcess in the context of the new task. 2000-07-25 12:11:53 +00:00
Ove Kaaven 9b2060afab Change the V86BASE macro to call DOSMEM_MemoryBase() instead of using
the ugly Dr7 hack.
2000-07-23 13:36:41 +00:00
Alexandre Julliard a3e0cfc5fb Get full path of argv[0] before we change directories.
Make sure process names are long path names.
Cleaned up initialisation a bit.
2000-07-16 18:21:34 +00:00
Andreas Mohr 2caee712a2 Spelling fixes. 2000-07-16 15:44:22 +00:00
Andreas Mohr 6f83a5ee8f Doc and trace updates. 2000-07-16 15:43:07 +00:00
Marcus Meissner dad709122a Transmit current directory settings to newly created processes. 2000-07-16 15:42:22 +00:00
Huw D M Davies 10b1b23d40 Create rpcrt4.dll.
Implement UuidCreate (using existing code from CoCreateGuid).
CoCreateGuid calls UuidCreate.
2000-07-15 19:53:50 +00:00
Peter Ganten ddd1a73675 Fixed a file descriptor leak in the PE loader. 2000-07-15 19:44:29 +00:00
Andreas Mohr f8b0725399 Added ws2_32 loadorder. 2000-07-15 15:13:28 +00:00
Gerard Patel bd55eb8703 Add a warning when the normal load address for a win32 program is not
available.
2000-07-15 15:11:31 +00:00
Andreas Mohr e0a08423a0 Added loadorder entry for the Linux glide3x library. 2000-07-15 14:58:08 +00:00
Andreas Mohr 96293d4c29 Rename MODULE_InitDll to MODULE_InitDLL for the sake of consistency. 2000-07-08 18:28:03 +00:00
Alexandre Julliard 596921da0c Make sure the cmdline passed to CreateProcessA is writeable (thanks to
Peter Ganten <peter@ganten.org>).
2000-06-24 20:53:47 +00:00
Dave Hawkes fd54c98abd GlobalFree16 returns NULL on success, but DestroyAcceleratorTable
should return TRUE on success.
2000-06-23 16:51:19 +00:00
Dmitry Timoshkov 5890c09983 Use GetSystemDefaultLangID() instead of WINE_LanguageId. 2000-06-18 19:31:19 +00:00
Ove Kaaven fefb104327 Make the base relocation message a WARN, not a FIXME. 2000-06-18 17:21:12 +00:00
Dmitry Timoshkov 3332bd068e Optimized implementation of LoadStringA. 2000-06-15 00:11:06 +00:00
Juergen Schmied 13d74c5f0a - new dll shfolder.dll
- small fixes
2000-06-13 03:45:52 +00:00
Alexandre Julliard 5ea22474bb Use the Unicode string functions from wine/unicode.h instead of the
crtdll ones.
2000-06-13 01:10:29 +00:00
Alexandre Julliard 13c965cc9f Make sure GetModuleFileName16 does not return garbage even if the path
is not valid (thanks to Andreas Mohr).
2000-06-10 04:45:52 +00:00
Alexandre Julliard 8fe0551aa3 Removed a few unnecessary includes. 2000-06-08 04:57:58 +00:00
Alexandre Julliard e3332128b0 Use FILE_SHARE_READ to open the file in GetBinaryTypeA. 2000-06-08 01:00:16 +00:00
Alexandre Julliard ec77b8387f Send full path name and debug information in load_dll event. 2000-06-08 00:58:50 +00:00
Ulrich Weigand 7e85ea7c86 Moved stack switch handling (large stack) to sysdeps.c
Enable exception dispatch while on large stack.
2000-06-04 01:35:43 +00:00
Alexandre Julliard 7fe09bce86 Moved kernel initialization to kernel_main.c 2000-06-03 04:49:40 +00:00
Alexandre Julliard 2d8cf500c3 Merged display.dll into USER. 2000-06-03 04:20:19 +00:00
Juergen Schmied 6d01aeb20f Give a error message if a forwarded export is not resolved. 2000-06-01 23:23:00 +00:00
Dimitrie O. Paun 84bde6a4a4 Separate wineps out of Wine's core. 2000-05-30 20:27:23 +00:00
Alexandre Julliard 0211d70a15 Make sure initial task is not marked as 32-bit. 2000-05-30 19:46:11 +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
Ulrich Weigand f2f0927eb3 Fixed initialization of INSTANCEDATA in InitTask(). 2000-05-19 03:40:22 +00:00