Hoe Om 'n Program Van Visual Basic Af Te Sluit

INHOUDSOPGAWE:

Hoe Om 'n Program Van Visual Basic Af Te Sluit
Hoe Om 'n Program Van Visual Basic Af Te Sluit

Video: Hoe Om 'n Program Van Visual Basic Af Te Sluit

Video: Hoe Om 'n Program Van Visual Basic Af Te Sluit
Video: Мы потеряемся в метро ► 3 Прохождение Silent Hill 3 ( PS2 ) 2024, November
Anonim

Die buigsame en kragtige programmeringstaal Visual Basic. NET, wat een van die spesiaal geskepte instrumente is vir die ontwikkeling van toepassings vir die Microsoft. NET-platform, laat u al sy vermoëns ten volle benut. In die besonder, met die komponente van die System. Diagnostics-naamruimte, kan u interaksie hê met prosesse, gebeurtenislêers en prestasietellers. U kan byvoorbeeld 'n program van Visual Basic afsluit met die prosesklas.

Hoe om 'n program van Visual basic af te sluit
Hoe om 'n program van Visual basic af te sluit

Nodig

Microsoft Visual Studio

Instruksies

Stap 1

Voer die naamruimtes System, System. Diagnostics en System. Treading in. Voeg die volgende reëls kode by aan die begin van die module:

Invoerstelsel

Invoerstelsel. Diagnostics

Invoerstelsel. Skroefdraad

Dit is net vir die gemak van die gebruik van die komponente wat verband hou met hierdie naamruimtes.

Stap 2

Kry die data van die proses af. Gebruik die System. Diagnostics. Process-klasvoorwerp. Verklaar 'n veranderlike van hierdie klas:

Dim dimensie as proses

Gebruik dan die metode om die vereiste proses te vind.

Stap 3

As die program, wat in die toekoms moet afgesluit word, van stapel gestuur word deur die toepassing wat ontwikkel word, moet u die voorwerp wat u met die Start-metode terugstuur, eenvoudig stoor:

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

Stap 4

As u 'n proses met 'n bekende identifiseerder moet afsluit, gebruik die statiese GetProcessById-metode van die prosesklas om die ooreenstemmende voorwerp te kry:

oProc = Process. GetProcessById (nID)

Waar nID die numeriese identifiseerder van die proses is.

Stap 5

As slegs sommige van die kenmerke van die teikenproses bekend is, soek dit. Kry die lys van prosesse wat op die plaaslike masjien loop as 'n verskeidenheid voorwerpe van die prosesklas. Gebruik die GetProcesses (gee alle prosesse terug) of GetProcessesByName (slegs prosesse met die gegewe naam):

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

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

Lys die skikkingvoorwerpe met behulp van 'n lus:

Dim dimensie as proses

Vir elke oProc in aoAllProcesses

se optrede op oProc

Volgende

Blaai deur die eienskappe MainModule, MainWindowTitle, ProcessName, ens. om die gewenste voorwerp te vind.

Stap 6

Probeer om die program te beëindig deur 'n nabye boodskap na die hoofvenster te stuur. Noem die CloseMainWindow-metode van die voorwerp wat ooreenstem met die teikenproses. Wag indien nodig totdat die aansoek voltooi is deur WaitForExit te skakel, byvoorbeeld:

oProc. CloseMainWindow ()

oProc. WaitForExit ()

Hierdie metode waarborg nie die beëindiging van die program nie, aangesien die venster sluit-boodskap dikwels verwerk word en geïgnoreer kan word.

Stap 7

Wag 'n kort tydjie nadat u CloseMainWindow gebel het om te verseker dat die program beëindig word. Gebruik die slaapmetode van die Thread-klas. Gaan dan die status van die proses na deur die HasExited-eiendom te ondersoek en, as dit nog nie voltooi is nie, skakel die Kill-metode:

Thread. Sleep (6000)

oProc. Refresh ()

Indien nie, oProc. HasExited dan

oProc. Kill ()

Einde as

As u wil, kan u die status van die proses in 'n lus ondersoek en periodieke versoeke aan die gebruiker rig om die aansoek te beëindig sonder om data te stoor. En net as u instem om Kill te bel.

Stap 8

Maak stelselbronne vry nadat die program klaar is met die Close-metode:

oProc. Sluit ()

Stap 9

Om onverwagte foute tydens die uitvoering van die aansoek te vermy, plaas die hele algoritme vir die sluiting van die program in 'n Try-Catch-End Try-blok. Implementeer volwaardige uitsonderingshantering met diagnostiese boodskappe, indien nodig.

Aanbeveel: