Programa externo dentro de outro, aberto pela 2ª vez, não aparece
Olá pessoal!
Gostaria de ver se alguém ja passou por isso ou sabe a resolução.
Seguinte:
Meu sistema possui um gerenciador de módulos; é por ele que o usuário acessa todos os programas. Quando ele executa pela 1ª vez qualquer executável, o gerenciador ve que o mesmo nao está na memória e executa o programa desejado, carregando-o dentro do gerenciador através do Windows.SetParent e ShowWindow.
Digamos que o gerenciador precisou ser fechado ou ocorreu alguma exeception que o finalizou forçadamente. O programa que estava aberto ficou na memória. Quando o usuário abrir o gerenciador novamente, o gerenciador sabe o handle do MainForm do programa que esta aberto em memória e tenta carregá-lo novamente.
O estranho é que mesmo tendo o handle, que é o mesmo do MainForm da aplicação executada na 1ª tentativa, ao tentar o Windows.SetParent e ShowWindow novamente, apenas o fundo do form aparece dentro do gerenciador; o restante dos controles do programa não aparecem...
Alguém sabe o pq disso?
Se puderem me ajudar, ficarei muito grato!
Abs!
Marcelo Souza
Curtidas 0