title image


Smiley Re: Ausgabe in DOS Fenster?
So kannst du eine Console benutzen in VB EXE:



Option Explicit

 

Private Declare Function AllocConsole 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 String, _

    ByVal nNumberOfCharsToWrite As Long, _

    lpNumberOfCharsWritten As Long, _

    lpReserved As Any _

) As Long

 

Private Declare Function CloseHandle Lib "kernel32" ( _

    ByVal hObject As Long _

) As Long

 

Private Declare Function FreeConsole Lib "kernel32" () As Long

 

Private Const STD_OUTPUT_HANDLE = -11&

Private hConsole As Long

 

Private Sub Form_Load()

 

Dim txt As String

Dim num_written As Long

 

    If AllocConsole() Then

        hConsole = GetStdHandle(STD_OUTPUT_HANDLE)

        If hConsole = 0 Then

            MsgBox "Couldn't allocate STDOUT"

        Else

            ' Present a warning.

            txt = "******************************************" & vbCrLf & _

                "* Warning: Do not close this window! *" & vbCrLf & _

                "* Close the VB program's window instead. *" & vbCrLf & _

                "******************************************" & vbCrLf

            WriteConsole hConsole, txt, Len(txt), num_written, vbNullString

 

            ' Make this form visible and on top.

            Me.Show

            SetFocus

        End If

    Else

        MsgBox "Couldn't allocate console"

    End If

 

End Sub

Private Sub Command1_Click()

 

Dim txt As String

Dim num_written As Long

 

    txt = "Ready to run" & vbCrLf

    WriteConsole hConsole, txt, Len(txt), num_written, vbNullString

    Shell "cmd /c dir"

 

 

End Sub

 

Private Sub Form_Unload(Cancel As Integer)

    CloseHandle hConsole

    FreeConsole

End Sub





Code eingefügt mit Syntaxhighlighter 1.9
Moderation is OK, but not to excess...



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: