Question

Je veux être en mesure d'ouvrir une application graphique en utilisant CreateProcess dans un processus principal et ont l'affichage de l'interface graphique dans une fenêtre que je crée à partir du processus principal. Est-ce que quelqu'un sait comment cela ACHIVE? Merci!

Était-ce utile?

La solution

Si vous êtes dans le contrôle des deux applications alors oui.

Voici comment économiseurs d'écran d'affichage dans le panneau de contrôle de l'économiseur d'écran - le panneau de contrôle passait devant la fenêtre de dialogue sur la ligne de commande, et le fichier .scr - qui est juste un exe simple - crée sa fenêtre comme un enfant à l'aide du GIVEN HWND comme parent.

Capture d'une fenêtre du haut niveau déjà écrit et le forçant à exister au sein de votre propre cadre est cependant pas bien pris en charge.

Encore une fois, il est quelque chose que vous pouvez easilly essayer: je l'ai écrit une application de test qui a créé une fenêtre d'image vide, fait un FindWindow pour les copies de bloc-notes et reparented la fenêtre du bloc-notes être un enfant de mon cadre

.

Il fonctionne: dans ce scénario simple au moins, mais il n'y a aucune garantie: des applications plus complexes qui modifient leurs propres styles de cadre peut casser très bien, ayant en outre une fenêtre enfant et fenêtre parent sur différents threads introduit la possibilité de serrures à pêne dormant.

Autres conseils

Non, vous ne pouvez pas le faire.

Quelque chose que le travail pourrait ... Vous pourriez commencer le processus bien, puis en utilisant la poignée de fenêtre appliquer une série de changements à la fenêtre pour enlever le cadre. Ensuite, vous pouvez le déplacer à la position d'un autre contrôle de placement dans votre fenêtre et quand vous déplacer / événements Resize redimensionner aussi cette fenêtre enfant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top