Avatar billede srj Nybegynder
28. april 2008 - 14:09 Der er 7 kommentarer og
2 løsninger

Hvordan checker man om et eksternt program allerede er åbnet?

Hej
kan nogen hjælpe med hvordan man checker om et eksternt program allerede er åbnet i C#/.NET? Jeg åbner programmet fra min applikation med Process.Start(sti). For at sikre at programmet ikke åbnes flere gange kunne jeg bruge en funktion der i stedet skifter fokus til programmet hvis det allerede er åbnet.
Jeg har tidligere i Access brugt AppActivate til formålet, men kan ikke lige finde noget tilsvarende i C#/.NET.
Avatar billede aaberg Nybegynder
28. april 2008 - 14:34 #1
Hvis du altid åbner dine eksterne programmer via Process.Start(sti), kan du beholde en reference til processen, og lytte til Exited eventet på processen. Hvis Exited eventet ikke har været affyret, ved du at din eksterne applikasjon kører.

For at sætte fokus, kan du gøre følgende:

Opret følgende klasse.

internal static class Win32
{
    [DllImport("user32.dll", SetLastError=true)]
    [return: MarshalAs(UnmanagedType.Bool)]
    static public extern bool SetForegroundWindow(IntPtr hWnd);
}

Når du skal sætte fokus:

Win32.SetForegroundWindow(myProcess.MainWindowHandle);
Avatar billede srj Nybegynder
28. april 2008 - 15:10 #2
Super! Det virkede. 1000 tak
Avatar billede aaberg Nybegynder
28. april 2008 - 17:41 #3
svar :-)
Avatar billede aaberg Nybegynder
19. juni 2008 - 21:52 #4
Kommer der nogle points, eller?
Avatar billede aaberg Nybegynder
01. juli 2008 - 07:49 #5
Haaaaalloooo?
Avatar billede srj Nybegynder
01. juli 2008 - 08:08 #6
beklager meget aaberg, jeg er ny her....håber det hermed er i orden
Avatar billede aaberg Nybegynder
01. juli 2008 - 08:58 #7
Alle har været nye på et tidspunkt, så no bad feelings.

Du har dog ikke accepteret svaret endnu. Hvis det er første gang du skal acceptere et svar, så forstår jeg godt hvis du har problemer med at finde ud af hvordan du skal gøres. Du skal først vælge mit navn i boksen til venstre, og derefter trykke "Accepter". Se linket.

http://peecee.dk/upload/view/116190
Avatar billede srj Nybegynder
01. juli 2008 - 09:19 #8
OK, den var ikke helt intuitiv. Så håber jeg du har fået scoren nu :o)
Avatar billede aaberg Nybegynder
01. juli 2008 - 09:53 #9
elendigt brugergrænsesnit, spørger du mig! :-)

Nu er alt i skønneste orden.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester