Hvordan kan jeg afslutte en applikation via noget VB-kode, når applikationen har statusen "svarer ikke". Den metode hvor man sender en besked til programmet der fortæller det at det skal lukke ned, virker ikke når det ikke svarer. Den eneste måde man kan lukke programmet ned på manuelt, er via taskmanager -> afslut job. Det skal jeg så have noget kode der kan gøre for mig. På forhånd tak, Emil..
Når først en VB-applikation er i "svarer ikke" status, er der mig bekendt ingen anden måde, men du må finde årsagen til at dette kan ske, og afhjælpe det via error-handling i dit program.
Ved at i C# er der 2 metoder til at lukke en process, den ene er CloseMainWindow som siger til programmet det skal lukke, hvilket ikke vil virke hvis det ikke svarer.
Den anden er Kill som bare dræber processen, det må være muligt at lave det samme i VB.
Kill findes i VB, det anvendes til at slette filer. Kill "c:\test.txt"
I VB findes: End 'underforstået "current application" men jeg tvivler, på det kan indpasses dér hvor en applikation kører fast.
Normalt vil en fejl i VB, der ikke opfanges af en indbygget "Error Handling" blive sendt videre til Windows, der så finder sin mest relevante generelle fejlmeddelelse og sender den til monitoren som en meddelelsesboks. Men hvis et program f.eks. kører i uendelig løkke kan det ende med at låse.
Jeg har fundet en løsning på mit problem nu. Funktionen TerminateProcess var alt jeg havde brug for. Men grunden til at min applikation ikke svarer, skyldes at jeg benytter funktionen Sleep. Derfor kan det ikke afsluttes ved at sende en besked til det og be' det om at lukke ned.
Emil
Synes godt om
Ny brugerNybegynder
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.