Hi Charles,
I am trying to convert theForger's app_four.o2bas using MainWindow of WinUtil.inc. This works if I use WM_NCCREATE. The app would work fine, but there is a problem with using Ctrl-F6 and Ctrl-F4 for the mdi child windows. I tried to use MessageLoopProcesses, but this seems not to work. 
So as a test I modified in WinUtil.inc:
...
    #endif
    '
if not TranslateMDISysAccel(g_hMDIClient, &wm) then
    TranslateMessage @wm
    DispatchMessage @wm
end if
  wend 'GetMessage / PeekMessage
...
Now mdi.o2bas works fine, but I know this cannot be applied. In other apps there are also other combinations possible e.g.:
       ' Check for accelerator keystrokes
       if TranslateAccelerator( 
                hDlg,               // handle to receiving window 
                hAccelTable,        // handle to active accelerator table 
                &Msg) = 0 then      // message data
       if not IsDialogMessage(hFindDialog, &Msg) then
       if not IsDialogMessage(hFindReplaceDialog, &Msg) then
       if not IsDialogMessage(hDlg, &Msg) then
         TranslateMessage(&Msg)
         DispatchMessage(&Msg)
       end if
       end if
       end if
       end if
Would it be possible to replace :
 
TranslateMessage @wm 
DispatchMessage @wm 
somehow with an own block or could I use % MessageLoopProcesses in some way?
Roland
Edit: Code deleted. There is no need to use WM_NCCREATE