Как да затворите програма от Visual Basic

Съдържание:

Как да затворите програма от Visual Basic
Как да затворите програма от Visual Basic

Видео: Как да затворите програма от Visual Basic

Видео: Как да затворите програма от Visual Basic
Видео: Visual Basic 6.0. Урок первый. "Привет!!!" 2024, Ноември
Anonim

Гъвкавият и мощен език за програмиране Visual Basic. NET, който е един от специално създадените инструменти за разработване на приложения за платформата Microsoft. NET, ви позволява да използвате напълно всичките му възможности. По-специално компонентите на пространството от имена System. Diagnostics ви позволяват да взаимодействате с процеси, дневници на събития и броячи на производителността. Например можете да затворите програма от Visual Basic, като използвате клас Process.

Как да затворите програма от Visual basic
Как да затворите програма от Visual basic

Необходимо

Microsoft Visual Studio

Инструкции

Етап 1

Импортирайте System, System. Diagnostics и System. Threading пространства от имена. Добавете следните редове код в началото на модула:

Система за внос

Импортира System. Diagnostics

Импортира System. Threeading

Това е само за удобство при използването на компонентите, свързани с тези пространства от имена.

Стъпка 2

Вземете данните от процеса, който трябва да бъде затворен. Използвайте обекта на класа System. Diagnostics. Process. Декларирайте променлива от този клас:

Dim oProc As Process

След това използвайте някакъв метод, за да намерите необходимия процес.

Стъпка 3

Ако програмата, която ще трябва да бъде затворена в бъдеще, се стартира от разработваното приложение, тогава просто запазете обекта, върнат от метода Start при стартиране:

oProc = Process. Start ("app.exe")

Стъпка 4

Ако трябва да затворите процес с известен идентификатор, използвайте статичния метод GetProcessById от класа Process, за да получите съответния обект:

oProc = Process. GetProcessById (nID)

Където nID е числовият идентификатор на процеса.

Стъпка 5

Ако са известни само някои от характеристиките на целевия процес, потърсете го. Вземете списъка с процеси, работещи на локалната машина, като масив от обекти от класа Process. Използвайте методите GetProcesses (връща всички процеси) или GetProcessesByName (само процеси с даденото име):

Dim aoAllProcesses As Process () = Process. GetProcesses ()

Dim aoProcsByName As Process () = Process. GetProcessesByName ("app.exe")

Избройте обектите на масива с помощта на цикъл:

Dim oProc As Process

За всеки oProc в aoAllProcesses

действия върху oProc

Следващия

Прегледайте свойствата MainModule, MainWindowTitle, ProcessName и др. за да намерите желания обект.

Стъпка 6

Опитайте се да прекратите програмата, като изпратите близко съобщение до нейния главен прозорец. Извикайте метода CloseMainWindow на обекта, съответстващ на целевия процес. Ако е необходимо, изчакайте приложението да завърши, като извикате WaitForExit, например:

oProc. CloseMainWindow ()

oProc. WaitForExit ()

Този метод не гарантира прекратяване на програмата, тъй като съобщението за затваряне на прозореца често се обработва и може да бъде игнорирано.

Стъпка 7

Изчакайте кратко време след извикване на CloseMainWindow, за да сте сигурни, че програмата се прекратява. Използвайте метода Sleep от класа Thread. След това проверете състоянието на процеса, като разгледате свойството HasExited и, ако не е завършил, извикайте метода Kill:

Тема: Сън (6000)

oProc. Refresh ()

Ако не oProc. HasExited Тогава

oProc. Kill ()

Край ако

Ако желаете, можете да анкетирате състоянието на процеса в цикъл, като издавате периодични подкани към потребителя да прекрати приложението, без да запазва данни. И само ако се съгласите да се обадите на Kill.

Стъпка 8

Освободете системните ресурси, след като програмата завърши, използвайки метода Close:

oProc. Close ()

Стъпка 9

За да избегнете неочаквани грешки по време на изпълнение на приложението, поставете целия алгоритъм за затваряне на програмата в блок Try-Catch-End Try. Внедрете пълноценна обработка на изключения с диагностични съобщения, ако е необходимо.

Препоръчано: