Paindlik ja võimas programmeerimiskeel Visual Basic. NET, olles üks spetsiaalselt loodud tööriistu rakenduste arendamiseks Microsofti. NET-platvormi jaoks, võimaldab teil täielikult kasutada kõiki selle võimalusi. Eelkõige System. Diagnostics nimeruumi komponendid võimaldavad teil suhelda protsesside, sündmuste logide ja jõudlusloenduritega. Näiteks saate protsessi Visual Basicus programmi sulgeda.
Vajalik
Microsoft Visual Studio
Juhised
Samm 1
Importige süsteem, süsteem.diagnostika ja süsteem. Nimeruumide lõimimine. Lisage mooduli algusesse järgmised koodiread:
Impordisüsteem
Impordisüsteem. Diagnostika
Impordisüsteem. Keermestamine
See on lihtsalt nende nimeruumidega seotud komponentide kasutamise mugavuse huvides.
2. samm
Hankige protsessi andmete sulgemine. Kasutage klassi System. Diagnostics. Process objekti. Deklareerige selle klassi muutuja:
Dim oProc kui protsess
Seejärel kasutage vajaliku protsessi leidmiseks mõnda meetodit.
3. samm
Kui programmi, mis tuleb tulevikus sulgeda, käivitab arendatav rakendus, siis salvestage käivitamisel lihtsalt Start-meetodiga tagastatud objekt:
oProc = Process. Start ("app.exe")
4. samm
Kui peate protsessi sulgema teadaoleva identifikaatoriga, kasutage vastava objekti saamiseks protsessi klassi staatilist meetodit GetProcessById:
oProc = Process. GetProcessById (nID)
Kus nID on protsessi numbriline identifikaator.
5. samm
Kui on teada ainult mõned sihtrühma omadused, otsige seda. Hankige loend protsessidest, mis töötavad kohalikus masinas protsessi klassi objektide massiivina. Kasutage meetodeid GetProcesses (tagastab kõik protsessid) või GetProcessesByName (ainult antud nimega protsessid):
Dim aoAllProcesses As Process () = Process. GetProcesses ()
Dim aoProcsByName As Process () = Process. GetProcessesByName ("app.exe")
Loetlege massiivi objektid tsükli abil:
Dim oProc kui protsess
Iga oProci jaoks aoAllProcesses
'toimingud oProc-is
Järgmine
Tutvuge omadustega MainModule, MainWindowTitle, ProcessName jne. soovitud objekti leidmiseks.
6. samm
Proovige programm lõpetada, saates selle peaaknasse lähedase teate. Helistage objekti protsessile CloseMainWindow, mis vastab sihtprotsessile. Vajadusel oodake rakenduse valmimist, helistades näiteks WaitForExit:
oProc. CloseMainWindow ()
oProc. WaitForExit ()
See meetod ei taga programmi lõpetamist, kuna akna sulgemise teadet töödeldakse sageli ja seda saab ignoreerida.
7. samm
Pärast programmi CloseMainWindow helistamist oodake lühikest aega, et tagada programmi lõpetamine. Kasutage lõime klassi unerežiimi. Seejärel kontrollige atribuudi HasExited protsessi olekut ja kui see pole veel lõpule jõudnud, helistage Kill-meetodile:
Lõng. Magama (6000)
oProc. Värskenda ()
Kui mitte oProc. HasExited Siis
oProc. Kill ()
Lõpeta, kui
Soovi korral saate küsida protsessi olekut silmuses, väljastades kasutajale perioodilisi viipasid rakenduse lõpetamiseks ilma andmeid salvestamata. Ja ainult siis, kui olete nõus Killile helistama.
8. samm
Pärast programmi lõpetamist Sule-meetodi abil vabastage süsteemiressursid:
oProc. Sule ()
9. samm
Rakenduse käivitamisel ootamatute vigade vältimiseks asetage kogu programmi sulgemise algoritm proovimispüüdmise proovimise plokki. Vajadusel rakendage diagnostika sõnumitega täieõiguslik erandite käsitlemine.