Das Projekt muss dazu so eingestellt sein, dass Anwendungsframework aktivieren NICHT eingestellt ist. Dann kann das Projekt mit einer SUB Main gestartet werden. Mein Code der Sub Main sieht so aus: ''' <summary> ''' Description of Start. ''' </summary> Public Class Start <STAThread()> Public Shared Sub Main(ByVal args As String()) Application.EnableVisualStyles() Application.SetCompatibleTextRenderingDefault(False) Dim aField() As String = {"/strtFrm="} Dim fField() As Form = {Form1, Form2, Form3, Form4, Form5, Form6, frmUnicodes, Form8, Form9, Form10, Form11} Dim fnField() As String = {Form1.Name, Form2.Name, Form3.Name, Form4.Name, Form5.Name, Form6.Name, frmUnicodes.Name, Form8.Name, Form9.Name, Form10.Name, Form11.Name} Dim idx As Short, nf As New Form ' Startparameter einstellen Dim clFeld As Array = ParseCommandLineArgs(aField) Dim sp() As String = Split(clFeld(0), "=") idx = fnField.IndexOf(fnField, sp(1)) nf = fField(idx) Application.Run(nf) End Sub End Class Das bedeutet, dass in:
Die Funktion ParseCommandLineArgs liest die Startparameter ein (in diesem Fall ist nur einer möglich lt. aField). Dann wird mittels Split der eigentliche Parameter (Formname) ermittelt und zur Festlegung der Startform verwendet. Die Application wird dann mit der ausgewählten Form gestartet. Ich habe in meinem Testprojekt bspw. 11 verschiedene Formen, die ich mit Startparameter vor dem Start meines Programms auswählen kann. Hier noch der Code zur Funktion ParseCommandLineArgs: ''' <summary> ''' Commandline-Argumente lesen und übernehmen ''' </summary> ''' <param name="argField">Feld der Parameterbezeichnungen /bezeichnung=</param> ''' <returns>Feld mit den Werten?</returns> Public Function ParseCommandLineArgs(ByVal argField() As String) As Array Dim anz As Short = My.Application.CommandLineArgs.Count If anz = 0 Then ' sind Argumente vorhanden? Return Nothing ' nein Else Dim cmdFeld(anz - 1) As String ' ja Dim i As Short = 0 For Each s As String In My.Application.CommandLineArgs cmdFeld(i) = s i += 1 Next s Return cmdFeld End If End Function Dieser Tipp wurde bereits 6.214 mal aufgerufen.
Anzeige
![]() ![]() ![]() 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. |
sevOutBar 4.0 ![]() Vertikale Menüleisten á la Outlook Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Tipp des Monats TOP Entwickler-Paket ![]() TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.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. |