Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Visual Basic biedt een goed gedefinieerd model voor het beheren van het gedrag van Windows Forms-toepassingen: het Visual Basic-toepassingsmodel. Dit model bevat gebeurtenissen voor het afhandelen van het opstarten en afsluiten van de toepassing, evenals gebeurtenissen voor het ondervangen van niet-verwerkte uitzonderingen. Het biedt ook ondersteuning voor het ontwikkelen van enkele instantie toepassingen. Het toepassingsmodel is uitbreidbaar, zodat ontwikkelaars die meer controle nodig hebben, de overschrijfbare methoden kunnen aanpassen.
Gebruikt voor het toepassingsmodel
Een typische toepassing moet taken uitvoeren wanneer deze wordt gestart en afgesloten. Wanneer deze bijvoorbeeld wordt gestart, kan de toepassing een welkomstscherm weergeven, databaseverbindingen maken, een opgeslagen status laden, enzovoort. Wanneer de toepassing wordt afgesloten, kan deze databaseverbindingen sluiten, de huidige status opslaan, enzovoort. Bovendien kan de toepassing specifieke code uitvoeren wanneer de toepassing onverwacht wordt afgesloten, zoals tijdens een onverwerkte uitzondering.
Met het Visual Basic Application Model kunt u eenvoudig een toepassing met een enkele instantie maken. Een toepassing met één exemplaar verschilt van een normale toepassing, omdat slechts één exemplaar van de toepassing tegelijk kan worden uitgevoerd. Een poging om een tweede instantie van een enkelvoudige toepassing te starten, resulteert erin dat de oorspronkelijke instantie—via de StartupNextInstance gebeurtenis—wordt gemeld dat er een nieuwe startpoging is gedaan. De melding bevat de argumenten van de opdrachtregel voor de volgende instantie. Het volgende exemplaar van de toepassing wordt vervolgens gesloten voordat er initialisatie kan plaatsvinden.
Een toepassing met één exemplaar wordt gestart en controleert of dit het eerste exemplaar of een volgende instantie van de toepassing is:
Als dit het eerste exemplaar is, begint het zoals gebruikelijk.
Elke volgende poging om de toepassing te starten, terwijl het eerste exemplaar wordt uitgevoerd, resulteert in zeer verschillend gedrag. De volgende poging informeert de eerste instantie over de opdrachtregelargumenten en verlaat vervolgens onmiddellijk. Het eerste exemplaar verwerkt de
StartupNextInstancegebeurtenis om te bepalen wat de opdrachtregel-argumenten van het volgende exemplaar zijn geweest en blijft draaien.In dit diagram ziet u hoe een volgend exemplaar het eerste exemplaar signaleert.
Door de StartupNextInstance gebeurtenis af te handelen, kunt u bepalen hoe uw toepassing met één exemplaar zich gedraagt. Microsoft Outlook wordt bijvoorbeeld meestal uitgevoerd als een toepassing met één exemplaar; wanneer Outlook wordt uitgevoerd en u Outlook opnieuw probeert te starten, wordt de focus verplaatst naar het oorspronkelijke exemplaar, maar er wordt geen ander exemplaar geopend.
Gebeurtenissen in het toepassingsmodel
De volgende gebeurtenissen vindt u in het toepassingsmodel:
Toepassing opstarten. De toepassing genereert de Startup gebeurtenis wanneer deze wordt gestart. Door deze gebeurtenis af te handelen, kunt u code toevoegen waarmee de toepassing wordt geïnitialiseerd voordat het hoofdformulier wordt geladen. De
Startupgebeurtenis voorziet ook in het annuleren van de uitvoering van de toepassing tijdens die fase van het opstartproces, indien gewenst.U kunt de toepassing zo configureren dat er een welkomstscherm wordt weergegeven terwijl de opstartcode van de toepassing wordt uitgevoerd. Standaard onderdrukt het toepassingsmodel het splash screen wanneer het
/nosplash-argument of het-nosplash-opdrachtregelargument wordt gebruikt.Toepassingen met een enkele instantie. De StartupNextInstance gebeurtenis wordt geactiveerd wanneer een volgende instantie van een toepassing die met een enkele instantie werkt, wordt gestart. De gebeurtenis geeft de opdrachtregelargumenten van een volgende instantie door.
Onverwerkte uitzonderingen. Als de toepassing een niet-verwerkte uitzondering tegenkomt, wordt de UnhandledException gebeurtenis gegenereerd. Uw handler voor die gebeurtenis kan de uitzondering onderzoeken en bepalen of de uitvoering moet worden voortgezet.
De
UnhandledExceptiongebeurtenis wordt in sommige omstandigheden niet opgeroepen. Zie UnhandledException voor meer informatie.Wijzigingen in de netwerkverbinding. Als de beschikbaarheid van het netwerk van de computer wordt gewijzigd, wordt de gebeurtenis gegenereerd door de NetworkAvailabilityChanged toepassing.
De
NetworkAvailabilityChangedgebeurtenis wordt in sommige omstandigheden niet opgeroepen. Zie NetworkAvailabilityChanged voor meer informatie.Toepassing wordt afgesloten. De toepassing geeft de Shutdown gebeurtenis aan wanneer deze op het punt staat om af te sluiten. In deze gebeurtenis-handler kunt u ervoor zorgen dat de bewerkingen die uw toepassing moet uitvoeren, bijvoorbeeld sluiten en opslaan, moeten worden voltooid. U kunt uw toepassing zo configureren dat deze wordt afgesloten wanneer het hoofdformulier wordt gesloten of alleen als alle formulieren worden gesloten.
Beschikbaarheid
Het Visual Basic-toepassingsmodel is standaard beschikbaar voor Windows Forms-projecten. Als u de toepassing configureert voor het gebruik van een ander opstartobject of de toepassingscode start met een aangepast object Sub Main, moet dat object of de klasse mogelijk een implementatie van de WindowsFormsApplicationBase klasse bieden om het toepassingsmodel te kunnen gebruiken. Zie Application Page, Project Designer (Visual Basic) voor informatie over het wijzigen van het opstartobject.