Dê foco a uma janela iniciada a partir de um serviço do sistema usando CreateProcessAsUser

Eu tenho um serviço do sistema que iniciar um aplicativo usando o métodoCreateProcessAsUser.

Este serviço usa a representação para iniciar o aplicativo na sessão ativa. O aplicativo está sendo lançado como deveria, eu consegui fazer a janela aparecer na frente usando:

SetWindowPos (& this-> wndTopMost, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);

Mas eu não sei o que fazer para que o aplicativo possa ter o foco do teclado. Mesmo que o aplicativo esteja no topo, desde que o usuário não clique na janela, a entrada do teclado vai para o aplicativo abaixo do meu aplicativo.