login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Applicatie naar voor brengen (Opgelost)

Offline GSharp - 20/08/2008 18:10 (laatste wijziging 20/08/2008 19:29)
Avatar van GSharpLid Beste(n)

Ik doe tijdens een windows applicatie een test of het process van Paint.exe al draait. Indien dit al draait zou ik dit naar de voorgrond moeten brengen. Indien dit nog niet draait start ik de applicatie Paint.exe

Heeft er iemand een idee hoe ik deze naar voor kan brengen indien het proces reeds gestart is?

Voor de controleren of dit reeds gestart is gebruik ik :

  1. System.Diagnostics.Process[] RunningProcesses = System.Diagnostics.Process.GetProcessesByName(processName);
  2. if (RunningProcesses.Length == 0)
  3. {
  4. start paint.exe;
  5. }
  6. else
  7. {
  8. breng paint.exe naar voorgrond;
  9. }

Alvast bedankt

Grtn
GSharp
titjes schreef:
CODETAGS!!!

2 antwoorden

Gesponsorde links
Offline Abbas - 20/08/2008 19:30 (laatste wijziging 20/08/2008 19:31)
Avatar van Abbas Gouden medaille

Crew .NET
Gebruik bij het zoeken naar een proces alleen de naam en niet de extentie erbij! Om een proces te starten gebruik je Proces.Start(), zoals hieronder:
  1. Process[] RunningProcesses = Process.GetProcessesByName("mspaint");
  2. if (RunningProcesses.Length == 0)
  3. {
  4. //start paint.exe;
  5. //PAINT STARTEN
  6. Process.Start("mspaint.exe");
  7. }
  8. else
  9. {
  10. //breng paint.exe naar voorgrond;
  11. //weet ik niet direct, zal er eens naar kijken
  12. }
Hoe je een bestaand proces naar voren brengt weet ik niet direct.
Offline GSharp - 20/08/2008 22:08 (laatste wijziging 21/08/2008 18:29)
Avatar van GSharp Lid Ok titjes

alvast bedankt

Ik zat toch al in de goede richting 

grtn

GSharp

** Edit :

Het is me voorlopig al gelukt om de focus te geven aan paint als die al openstaat maar wordt nog niet getoond. Je ziet dat de focus in mijn taskbar verspringt naar paint maar nog niet over mn huidige applicatie getoond wordt, als iemand hier nog een oplossing op weet zou fantastisch zijn
dit is de code van de else loop indien het proces paint al actief is
  1. if(paint niet actief)
  2. {
  3. start paint
  4. }
  5. else
  6. {
  7. System.Diagnostics.Process[] RunningProcesses = System.Diagnostics.Process.GetProcessesByName("paint");
  8. if (RunningProcesses.Length > 0)
  9. {
  10. SetForegroundWindow(RunningProcesses[0].MainWindowHandle);
  11. }
  12. }



**Edit2: Het werkt !!
.Net eens even afgesloten en project terug opgestart en nu werkt het :-)
De wondere wereld van Microsoft 

ps: sorry voor het vergeten van de codetags, zal er volgende keer aan denken

Grtn

GSharp

Grtn

GSharp
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.167s