mais @rgautier: Seu conselho é obsoleto e já não suportado pelo MS
Partindo de Windows Vista, os serviços interativos são somente para a razão da compatibilidade e não devem ser permitidos para serviços novos.
Em Vista e mais novo, os serviços e os usuários entrados residem sempre na sessão terminal diferente e assim somente o IPC é possível (assim que nenhuns punhos, mensagens da janela e GUIs ser possível). Vista e mais novo indicarão uma mensagem de advertência desagradável se você tenta mostrar um diálogo em um serviço.
Em lugar de você tem que criar um processo novo na sessão do alvo (começos em 1), onde você quer funcionar sua aplicação. Usar CreateProcessAsUser (CPAU) mas NÃO CreateProcess. Recuperar o símbolo do usuário com WTSQueryUserToken e usá-lo em CPAU então.