Simulating Ctrl+Key press to external Window

Something I thought should be basic but it appears not:

I execute an application using WinExec and try to simulate the user
pressing Ctrl+M

Something like

Wnd:=WinExec('c:\app',SW_NORMAL);
PostMessage(Wnd,WM_KEYDOWN,VK_CONTROL,0);
PostMessage(Wnd,WM_KEYDOWN,$4D,0);

Obviously this isn't quite right - my guess is I need to set the LParam
correctly but I'm not sure about any of this.

Any help out there?