Com Es Tanca Un Programa Des De Visual Basic

Taula de continguts:

Com Es Tanca Un Programa Des De Visual Basic
Com Es Tanca Un Programa Des De Visual Basic

Vídeo: Com Es Tanca Un Programa Des De Visual Basic

Vídeo: Com Es Tanca Un Programa Des De Visual Basic
Vídeo: Visual Basic 2010 для начинающих 1й урок 1/3 2024, Maig
Anonim

El llenguatge de programació flexible i potent Visual Basic. NET, que és una de les eines especialment creades per al desenvolupament d’aplicacions per a la plataforma Microsoft. NET, us permet utilitzar totes les seves capacitats. En particular, els components de l’espai de noms System. Diagnostics us permeten interactuar amb processos, registres d’esdeveniments i comptadors de rendiment. Per exemple, podeu tancar un programa de Visual Basic mitjançant la classe Process.

Com es tanca un programa des de Visual Basic
Com es tanca un programa des de Visual Basic

Necessari

Microsoft Visual Studio

Instruccions

Pas 1

Importeu els espais de noms System, System. Diagnostics i System. Threading. Afegiu les línies de codi següents al començament del mòdul:

Sistema d’importacions

Sistema d’importacions. Diagnòstic

Sistema d’importacions

Això és només per la comoditat d’utilitzar els components associats a aquests espais de noms.

Pas 2

Obteniu que es tanquin les dades del procés. Utilitzeu l’objecte de classe System. Diagnostics. Process. Declareu una variable d'aquesta classe:

Dim oProc com a procés

A continuació, utilitzeu algun mètode per trobar el procés requerit.

Pas 3

Si el programa, que haurà de ser tancat en el futur, s'inicia amb l'aplicació que s'està desenvolupant, simplement deseu l'objecte retornat pel mètode Start a l'inici:

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

Pas 4

Si heu de tancar un procés amb un identificador conegut, utilitzeu el mètode estàtic GetProcessById de la classe Process per obtenir l'objecte corresponent:

oProc = Process. GetProcessById (nID)

On nID és l’identificador numèric del procés.

Pas 5

Si només es coneixen algunes de les característiques del procés objectiu, cerqueu-lo. Obteniu la llista de processos que s’executen a la màquina local com a matriu d’objectes de la classe Process. Utilitzeu els mètodes GetProcesses (retorna tots els processos) o GetProcessesByName (només els processos amb el nom donat):

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

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

Enumereu els objectes de matriu mitjançant un bucle:

Dim oProc com a procés

Per a cada oProc a aoAllProcesses

'accions a oProc

Pròxim

Passeu per les propietats MainModule, MainWindowTitle, ProcessName, etc. per trobar l’objecte desitjat.

Pas 6

Intenteu finalitzar el programa enviant un missatge de tancament a la finestra principal. Truqueu al mètode CloseMainWindow de l'objecte corresponent al procés de destinació. Si cal, espereu que es completi l'aplicació trucant a WaitForExit, per exemple:

oProc. CloseMainWindow ()

oProc. WaitForExit ()

Aquest mètode no garanteix la finalització del programa, ja que el missatge de tancament de la finestra sovint es processa i es pot ignorar.

Pas 7

Espereu poc temps després de trucar a CloseMainWindow per assegurar-vos que el programa finalitza. Utilitzeu el mètode Sleep de la classe Thread. A continuació, comproveu l'estat del procés examinant la propietat HasExited i, si no ha finalitzat, truqueu al mètode Kill:

Thread. Sleep (6000)

oProc. Refresh ()

Si no, oProc. HasExited Aleshores

oProc. Kill ()

Finalitza If

Si ho desitgeu, podeu consultar l'estat del procés en forma de bucle, emetent avisos periòdics a l'usuari per finalitzar l'aplicació sense desar dades. I només si accepteu trucar a Kill.

Pas 8

Allibereu els recursos del sistema després que finalitzi el programa amb el mètode Close:

oProc. Close ()

Pas 9

Per evitar errors inesperats durant l'execució de l'aplicació, col·loqueu tot l'algorisme de tancament del programa en un bloc Try-Catch-End Try. Implementeu, si cal, un tractament complet d’excepcions amb missatges de diagnòstic.

Recomanat: