diff --git a/scheduler/process.c b/scheduler/process.c
index 1b7fa95a098eb67c2301e1e69d0e7056b0723764..20d2737de390946b9b26807d69986b6bc81fa2ee 100644
--- a/scheduler/process.c
+++ b/scheduler/process.c
@@ -439,6 +439,10 @@ void PROCESS_Start(void)
      *       16-bit stack must be set up, which it is only after TASK_Create
      *       in the case of a 16-bit process. Thus, we send the signal here.
      */
+
+    /* Load USER32.DLL before calling UserSignalProc (relay debugging!) */
+    LoadLibraryA( "USER32.DLL" );
+
     PROCESS_CallUserSignalProc( USIG_PROCESS_CREATE, 0 );
 
     PROCESS_CallUserSignalProc( USIG_THREAD_INIT, 0 );  /* for initial thread */