
 1. About HXLdr32

 With this program one can avoid to change PE executables as it
 is done by tool PEStub to run Win32 apps in plain DOS. Instead
 this program will go resident, hook dos interrupt 21h and wait
 for any "load and execute program" calls. If one is catched, the
 file to execute is examined if it is a PE console app and if
 so, PE file loader DPMILD32.EXE will be started to run this app.

 This seems to be a more conveniant way than modifying executables.
 One never knows if an application checks if it has been modified.
 
 
 2. Installing HXLdr32
 
 HXLdr32 is a TSR program, but is a dos device driver as well.
 So you can install it in several ways. For example by adding a 
 line in CONFIG.SYS like:
 
 DEVICE=C:\TOOLS\HXLDR32.EXE C:\TOOLS\DPMILD32.EXE
 
 or let HXLdr32 install as TSR by entering in CONFIG.SYS:
 
 INSTALL=C:\TOOLS\HXLDR32.EXE

 Of course, as a TSR HXLdr32 can be installed at any time simply by
 typing its name. HXLdr32 is a PE console app as well, so once the
 OS knows how to execute PE apps HXLdr32 will simply display a message 
 indicating that there is no need to install it.
 
 When being installed as TSR, be sure DPMILD32.EXE is located somewhere
 in a directory of your PATH environment variable. When being installed
 as device driver, there is no environment available, that's why you will
 have to enter the full path of DPMILD32.EXE as an argument here.


 3. Known Problems
 
 Due to the nature of the "resident" approach there is a slight difference
 compared to changing PE executables with PEStub. Other dos-extended
 PE executables will be executed by DPMILD32 as well, giving the
 containing stub no chance to take over. So for example apps created
 with the Borland extender (32RTM) will no longer execute 32RTM.EXE.
 Usually this shouldn't cause problems, but one should be aware of it.

 If you get error message:
  "dpmild32: <name of executable>: relocs stripped, cannot load"
 it may be necessary to set environment variable DPMILDR=8 (for
 a detailed description of DPMILDR variable view dpmild32.txt).

 Currently this program cannot deinstall itself.

 
 4. History
 
 V1.3, 2004/11/25: some PE binaries included in Borland's free
               commandline tools couldn't be loaded because they
               contained a value < 0x3E in field "relocation entries
               offset".
 V1.2, 2004/10/11: sections .text and .rdata no longer merged because
               of potential problems.
 V1.1, 2004/08/28: bugfix: internal buffer too small for large paths.
 V1.0, 2004/05/04: initial release
 
 
 5. Licence
 
 HXLdr32 is part of HX DOS extender, which is freeware. It may be used
 for any purpose.
 
 Copyright (C) Japheth 2004, http://www.japheth.de
 

