Закрыть ... [X]

Как закрыть программу из Visual Basic

Тебе понадобится
  • - Microsoft Visual Studio.
инструкция
Импортируйте пространства имен System, System.Diagnostics и System.Thread. Добавьте следующие строки кода в начало модуля:
Импортная система
Импорт системы. Диагностика
Импорт System.Threading
Это просто необходимо для удобства использования компонентов, связанных с этими пространствами имен.
Получите данные процесса, который вы хотите закрыть. Используйте объект класса System.Diagnostics.Process. Объявите переменную этого класса:
Dim oProc As Process
Затем используйте любой метод, чтобы найти необходимый процесс.
Если программа, которую нужно будет закрыть позже, запускается разрабатываемой программой, а затем просто сохраните объект, возвращаемый методом Start при запуске:
oProc = Process.Start ("app.exe")
Если вам нужно закрыть процесс с помощью известного идентификатора, используйте статический метод GetProcessById метода метода для получения соответствующего объекта:
oProc = Process.GetProcessById (nID)
Здесь nID - это числовой идентификатор процесса.
Если известны только некоторые характеристики целевого процесса, найдите его. Получите список процессов, выполняющихся на локальной машине, в виде массива объектов класса Process. Используйте методы GetProcesses (возвращает все процессы) или GetProcessesByName (обрабатываются только с указанным именем):
Dim aoAllProcesses As Process () = Process.GetProcesses ()
Dim aoProcsByName As Process () = Process.GetProcessesByName ("app.exe")
Список объектов массива с использованием цикла:
Dim oProc As Process
Для каждого oProc In aoAllProcesses
'действия на oProc
следующий
В цикле проанализируйте свойства MainModule, MainWindowTitle, ProcessName и т. Д., Чтобы найти нужный объект.
Попробуйте завершить программу, отправив сообщение закрытия в главное окно. Вызвать метод CloseMainWindow объекта, соответствующий целевому процессу. Если необходимо, дождитесь завершения приложения, вызвав WaitForExit, например:
oProc.CloseMainWindow ()
oProc.WaitForExit ()
Этот метод не гарантирует завершения программы, так как сообщение о закрытии окна часто обрабатывается и может быть проигнорировано.
Если вам необходимо гарантировать завершение программы после вызова CloseMainWindow, подождите короткое время. Используйте метод «Сон» класса «Тема». Затем проверьте состояние процесса, проанализировав свойство HasExited и, если он не будет завершен, вызовите метод Kill:
Thread.Sleep (6000)
oProc.Refresh ()
Если не oProc.HasExited Then
oProc.Kill ()
Конец, если
При желании вы можете запросить состояние процесса в цикле, выдав пользователю периодические запросы о необходимости прекратить работу приложения без сохранения данных. И только если вы согласитесь называть Kill.
Освободите системные ресурсы после завершения программы с использованием метода Close:
oProc.Close ()
Чтобы избежать неожиданных ошибок во время выполнения приложения, поместите весь алгоритм для закрытия программы в блок Try-Catch-End Try. При необходимости реализуйте полнофункциональную обработку исключений с помощью диагностических сообщений.

Похожие статьи


Преимущества различных видов растительных масел
Полезность меда
Как изменить дизайн сайта
Как определить направление вращения




ШОКИРУЮЩИЕ НОВОСТИ