Unter VB6 konnte man beim Starten der eigenen Anwendung mit Hilfe der App.PrevInstance-Eigenschaft schnell und einfach prüfen, ob die Anwendung bereits gestartet ist, um so einen Mehrfachaufruf der Anwendung zu verhindern. Unter VB.NET gibt es diese Eigenschaft aber leider nicht mehr. Nachfolgend eine Ersatzfunktion für VB.NET, mit der sich im Gegensatz zur VB6-Funktion die Erst-Instanz der Anwendung über den optional Parameter "bAppActivate" auch noch direkt aktivieren lässt! ' Anwendung bereits gestartet? Public Function AppPrevInstance(Optional ByVal bShowMsg As Boolean = True, _ Optional ByVal bAppActivate As Boolean = True) As Boolean ' Anzahl der gestarteten Prozesse der eigenen Anwendung If Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName).Length > 1 Then ' Hinweis anzeigen If bShowMsg Then MsgBox("Anwendung wird bereits ausgeführt!") ' Erst-Anwendung aktivieren If bAppActivate Then AppActivate(Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName)(1).Id) End If Return True End If End Function Beispiel für den Aufruf: Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' Falls Anwendung bereits gestartet, Hinweis anzeigen ' und Erst-Instanz aktivieren... If AppPrevInstance() Then ' ... und neue Instanz sofort wieder beenden Application.Exit() End If End Sub Dieser Tipp wurde bereits 22.555 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevCommand 4.0 ![]() Professionelle Schaltflächen im modernen Design! Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Tipp des Monats ![]() Rolf Wahlbrinck Doppelte Einträge in der ListBox schnell löschen Mit dieser Prozedur lassen sich alle doppelten Einträge einer sortierten ListBox schnell löschen. TOP Entwickler-Paket ![]() TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |