Visual Basic non include un modo semplice per comunicare direttamente con la console , lo schermo nero si accede in Vista , digitare "cmd " nella casella " Inizia ricerca " o l'esecuzione del "Prompt dei comandi " link " Accessori di programma " . Microsoft non fornire istruzioni per una coinvolti work-around , che viene descritto in questo esempio , utilizzando alcuni dei comandi autorizzati specifici. Anche così, la comunicazione è limitata senza conoscenze di programmazione avanzata e la routine di programmazione complicata. Istruzioni
1
Aprire Visual Basic e avviare un nuovo progetto , utilizzando il " EXE standard " modello trovato sotto "File ", "Nuovo progetto". Fare clic su "Progetto" nel menu in alto e " Aggiungi modulo " dall'elenco a discesa.
2
Tipo le seguenti righe nella finestra Modulo1 , che secondo Microsoft contiene l'unico codice che permetterà comunicazione diretta con la console in Visual Basic . La sottolineatura alla fine di alcune linee indica che il testo sulla riga successiva è una continuazione della linea corrente . Non comprende la sottolineatura quando si entra in questo codice ; semplicemente continuare a digitare su una sola riga :
Option ExplicitDeclare Funzione AllocConsole Lib " kernel32 " () As LongDeclare Funzione FreeConsole Lib " kernel32 " () As LongDeclare funzione CloseHandle Lib " kernel32 " ( ByVal hObject As Long ) _AS LongDeclare Funzione GetStdHandle Lib" kernel32 " ( ByVal _nStdHandle come lungamente) come LongDeclare Funzione WriteConsole Lib " kernel32 " Alias " WriteConsoleA " _ByVal hConsoleOutput As Long , lpBuffer As Any , _nNumberOfCharsToWrite ByVal come lungamente, lpNumberOfCharsWritten As Long , _lpReserved As Any ) Come LongPublic Const STD_OUTPUT_HANDLE = -11 &
3
doppio clic su Form1 nella lista Progetto sulla destra per aprire questo modulo. Fare clic su "Visualizza" e poi "Codice " dalla lista . Inserisci queste righe:
Dim hConsole come LongPrivate Sub Form_Load ( ) Se AllocConsole ( ) ThenhConsole = GetStdHandle ( STD_OUTPUT_HANDLE ) Se hConsole = 0 Then MsgBox " Impossibile allocare STDOUT " ElseMsgBox "Impossibile allocare console " End IfEnd Sub