PRB: Exchanging Window Handles Between 2 Cooperating Programs
ID Number:  Q11082

2.00 2.03 2.10 3.00
WINDOWS


Summary:

SYMPTOMS
   There are two cooperating programs that have exchanged window
   handles. One of these programs is serving as a slave to the other,
   which is called the master. When a user closes the master program,
   it is necessary to close the slave program's window and terminate
   it.

   If the window held by the slave is closed by the master program
   using DestroyWindow(), the slave program's window is destroyed;
   however, the slave program never receives a WM_DESTROY message.

RESOLUTION
   Messages are sent to the task that created the window (that is, the
   master program). Note that the Windows message dispatcher has no
   means of "knowing" that a window handle has been exchanged.

   The correct way to terminate the slave program is to send a
   WM_DESTROY message using PostAppMessage() to the slave program.
