Главная страница | назад

Article #15771: Maping a DLL into another process

 Question and Answer Database

FAQ771D.txt   Maping a DLL into another process
Category   :Windows API
Platform    :All
Product    :All 32 bit  

Is it possible to map a DLL into another process under Win32?

Yes, the following details one method of forcing a DLL to be mapped
into a different process under both Windows NT, and Windows 95.
  1. Install a global WH_GETMESSAGE hook which is implemented by the DLL. Note that you must store the HHOOK variable returned by the SetWindowsHookEx() function (and any other global variables that are used in the DLL) into a memory mapped file to be able to access it in the target process. Note that any global variables contained in the DLL will not be mapped into the other process, and will contain uninitialized values when referenced while the DLL is mapped into the other process(s). ?
  2. PostMessage a custom message (WM_USER + something) to a window in the target process. ?
  3. When the hook traps the message the DLL will be mapped into the target process during the processing of the message. ?
7/16/98 4:31:28 PM

Last Modified: 01-SEP-99