Since bug 2131 was closed I'll paste it here again:
ne_module.c explicitly sets errorcode 21 (ERROR_NOT_READY) when ( LoadLibraryA()ing the owner of a 16bit dll failed or the search for the 16bit dll returned a real (.so) dll and not a symlink to the owner ) and trying to load a native version of the 16bit dll failed with ERROR_FILE_NOT_FOUND.
(dlls/kernel/ne_module.c:1218)
Anyone knows the reason for that behavior?
-flx
Felix Nawothnig wrote:
Since bug 2131 was closed I'll paste it here again:
ne_module.c explicitly sets errorcode 21 (ERROR_NOT_READY) when ( LoadLibraryA()ing the owner of a 16bit dll failed or the search for the 16bit dll returned a real (.so) dll and not a symlink to the owner ) and trying to load a native version of the 16bit dll failed with ERROR_FILE_NOT_FOUND.
(dlls/kernel/ne_module.c:1218)
Anyone knows the reason for that behavior?
-flx
You can still comment to the bug even though it is closed. Since that bug was 2 issues in 1, I went ahead and closed it since the first issue cant/wont be fixed, but even though this issue has been posted to this list, it will be easier to keep track of if you file a bug for it as well.. Of course it could be related to the error in 2131. Some of the devs commented that 16-bit dll's use a PE header, while 32-bit ones use a NE header, and that is why it wouldnt be possible to wrap the 16-bit routines within the same dll as the 32-bit ones. This appears to honestly be for the same reason, if I understood what they were saying. Let's let them comment though, and if a bug should be filed, they will tell you to do so..
Dustin
Dustin Navea wrote:
You can still comment to the bug even though it is closed.
I know, but my question was neigher related to bug 2131 (it's just that it triggers the code in question) nor am I sure that the behaviour is wrong - the person who wrote that line must have had something in his mind. That's why I ask here.
-flx
(seems WD doesn't like being CCed? Resending...)
Dustin Navea wrote:
You can still comment to the bug even though it is closed.
I know, but my question was neigher related to bug 2131 (it's just that it triggers the code in question) nor am I sure that the behaviour is wrong - the person who wrote that line must have had something in his mind. That's why I ask here.
-flx
Felix Nawothnig felix.nawothnig@t-online.de writes:
Since bug 2131 was closed I'll paste it here again:
ne_module.c explicitly sets errorcode 21 (ERROR_NOT_READY) when ( LoadLibraryA()ing the owner of a 16bit dll failed or the search for the 16bit dll returned a real (.so) dll and not a symlink to the owner ) and trying to load a native version of the 16bit dll failed with ERROR_FILE_NOT_FOUND.
(dlls/kernel/ne_module.c:1218)
Anyone knows the reason for that behavior?
Error 21 in LoadModule16 means that the file exists but is 32-bit, which seems to be the appropriate error in that case.
Alexandre Julliard wrote:
Error 21 in LoadModule16 means that the file exists but is 32-bit, which seems to be the appropriate error in that case.
I dunno about LoadModule16() (no means to test it since it's a Win16 function...) but for LoadLibrary16() (which is just a one-line wrapper around the former in wine) at least WinXP returns 0 and sets the errorcode to 87 (ERROR_INVALID_PARAMETER).
-flx