Sicherlich fragen sich jetzt viele von Ihnen: Konsolenaufruf - was ist das? ' Beispiel : Konsolenaufruf Private Declare Function SetConsoleMode Lib "kernel32" ( _ ByVal hConsoleOutput As Long, _ dwMode As Long) As Long Private Declare Function FreeConsole Lib "kernel32" () As Long Private Declare Function GetStdHandle Lib "kernel32" ( _ ByVal nStdHandle As Long) As Long Private Declare Function WriteConsole Lib "kernel32" _ Alias "WriteConsoleA" ( _ ByVal hConsoleOutput As Long, _ ByVal lpBuffer As Any, _ ByVal nNumberOfCharsToWrite As Long, _ lpNumberOfCharsWritten As Long, _ lpReserved As Any) As Long Private Declare Function AllocConsole Lib "kernel32" () As Long Private Declare Function ReadConsole Lib "kernel32" _ Alias "ReadConsoleA" ( _ ByVal hConsoleInput As Long, _ ByVal lpBuffer As String, _ ByVal nNumberOfCharsToRead As Long, _ lpNumberOfCharsRead As Long, _ lpReserved As Any) As Long Private Const STD_INPUT_HANDLE = -10& Private Const STD_OUTPUT_HANDLE = -11& Private Const STD_ERROR_HANDLE = -12& Private Const ENABLE_LINE_INPUT = &H2 Private Const ENABLE_ECHO_INPUT = &H4 Private Const ENABLE_MOUSE_INPUT = &H10 Private Const ENABLE_PROCESSED_INPUT = &H1 Private Const ENABLE_WINDOW_INPUT = &H8 Private Const ENABLE_PROCESSED_OUTPUT = &H1 Private Const ENABLE_WRAP_AT_EOL_OUTPUT = &H2 Private Sub Command1_Click() Unload Me End Sub Private Sub Command2_Click() Dim strAusgabe As String Dim lngHEingabe As Long Dim lngHAusgabe As Long Dim lngHFehler As Long Dim strEingabeCount As String * 255 AllocConsole lngHEingabe = GetStdHandle(STD_INPUT_HANDLE) lngHAusgabe = GetStdHandle(STD_OUTPUT_HANDLE) lngHFehler = GetStdHandle(STD_ERROR_HANDLE) SetConsoleMode lngHEingabe, ENABLE_ECHO_INPUT strAusgabe = "Geben Sie eine Zahl zwischen 1 und 10 ein." _ & vbCrLf WriteConsole lngHAusgabe, strAusgabe, Len(strAusgabe), _ vbNull, vbNull ReadConsole lngHEingabe, strEingabeCount, _ Len(strEingabeCount), vbNull, vbNull strEingabeCount = funcTrim(strEingabeCount) If IsNumeric(strEingabeCount) Then If CLng(strEingabeCount) < 1 Or _ CLng(strEingabeCount) > 10 Then strAusgabe = "Sie muessen den Anweisungen folgen..." Else strAusgabe = "Ihre Eingabe war : " & strEingabeCount End If Else strAusgabe = "Sie muessen den Anweisungen folgen..." End If strAusgabe = strAusgabe & vbCrLf WriteConsole lngHAusgabe, strAusgabe, Len(strAusgabe), _ vbNull, vbNull strAusgabe = "Druecken Sie ENTER um zu Beenden." & vbCrLf WriteConsole lngHAusgabe, strAusgabe, Len(strAusgabe), _ vbNull, vbNull ReadConsole lngHEingabe, strEingabeCount, _ Len(strEingabeCount), vbNull, vbNull strEingabeCount = funcTrim(strEingabeCount) FreeConsole End Sub Public Function funcTrim(ByVal strEingabeString As String) _ As String Dim strAnt As String Dim strZeichen As String Dim lngLaenge As Long Dim lngStr As Long strAnt = strEingabeString lngLaenge = Len(strEingabeString) If lngLaenge > 0 Then For lngStr = 1 To lngLaenge strZeichen = Mid(strAnt, lngStr, 1) If Asc(strZeichen) > 32 Then Exit For Next strAnt = Mid(strAnt, lngStr) lngLaenge = Len(strAnt) If lngLaenge > 0 Then For lngStr = lngLaenge To 1 Step -1 strZeichen = Mid(strAnt, lngStr, 1) If Asc(strZeichen) > 32 Then Exit For Next End If strAnt = Left$(strAnt, lngStr) End If funcTrim = strAnt End Function Am besten Sie schauen sich das kleine Anwendungsbeispiel an und probieren es einmal aus. Dieser Tipp wurde bereits 22.894 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (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! sevEingabe 3.0 ![]() Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Tipp des Monats Heinz Prelle Datei-Mehrfachauswahl an eine ListBox übergeben Dieser Tipp zeigt, wie Sie über den Windows-CommonDialog eine Mehrfach-Dateiauswal realisieren... 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. |
|||||||||||||||||


Konsolen Aufruf mit Wertuebergabe


