[C#] SetParent ander procces openen binnenin applicatie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Tweak-a-holic
  • Registratie: December 2002
  • Laatst online: 08-03-2023
Ik draai binnen in een windows form tabblad een externe applicatie, dit door middel van de volgende code:

Process p = Process.Start(start.exe);
p.WaitForInputIdle();
SetParent(p.MainWindowHandle, panel10.Handle);

dit werkt allemaal prima en geeft eigenlijk geen problemen. Alleen geeft deze start.exe applicatie af en toe een melding die op een nieuw (overliggend) scherm ligt. Wanneer dit gebeurd wanneer ik in een ander tabblad zit dan loopt mijn applicatie vast omdat hij wacht op het "ok" klikken in het overliggende scherm.

Is er een mogelijkheid dat ook deze geopende schermen binnen in het tabblad blijven? Zodat ik als nog terug terug kan gaan naar het tabblad en "ok" kan klikken?

alvast bedankt.

I just wanna make fake love to you...


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Tweak-a-holic schreef op woensdag 28 juli 2010 @ 18:19:
Alleen geeft deze start.exe applicatie af en toe een melding die op een nieuw (overliggend) scherm ligt. Wanneer dit gebeurd wanneer ik in een ander tabblad zit dan loopt mijn applicatie vast omdat hij wacht op het "ok" klikken in het overliggende scherm.
Dat klinkt als een modal dialog en daar kun je dan bar weinig aan doen; dat is nou net het idee van modal ;) Omdat je met setparent je eigen window eigenaar maakt van het proces zal je eigen proces dus braaf wachten op de modal dialog. Ik vrees dat daar weinig of geen echte oplossingen (lees: hacks) voor zijn.

[edit]
Uh, of je moet op dat proces in een worker (dus non-ui) thread zien te krijgen ofzo, maar het is laat en mistig in mijn hoofd... :P

[ Voor 8% gewijzigd door RobIII op 29-07-2010 02:13 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij