Показать сообщение отдельно
Старый 20.01.2004, 12:00     # 4
Mazzi
Member
 
Аватар для Mazzi
 
Регистрация: 03.07.2002
Адрес: Черноземье
Сообщения: 261

Mazzi Луч света в тёмном царствеMazzi Луч света в тёмном царствеMazzi Луч света в тёмном царствеMazzi Луч света в тёмном царствеMazzi Луч света в тёмном царстве
оппп..извиняюсь..попутал с обыкновенным Basicом..
в VB.Net есть класс Console и там просто работать с консолью.
вобычном VB можно вывести использую API функции по работе с консолью
вот не помню откуда взял пример, можнт поможет
Цитата:
Как подключить консольное окно к приложению Visual Basic
Эта статья демонстрирует подключение консольного окна к приложению Visual Basic, из которого можно записывать в это консольное окно и запускать другие приложения в этом консольном окне.



Пример по шагам
Воспользуйтесь Блокнотом (Notepad) для создания следующего bat-файла:

DIR /W

и сохраните его как C:\TEST.BAT


В Visual Basic создайте новый проект с формой и модулем.


Занесите в модуль следующие объявления API функций:

Option Explicit

Declare Function AllocConsole Lib "kernel32" () As Long
Declare Function FreeConsole Lib "kernel32" () As Long
Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) _
As Long
Declare Function GetStdHandle Lib "kernel32" (ByVal _
nStdHandle As Long) As Long
Declare Function WriteConsole Lib "kernel32" Alias "WriteConsoleA" _
(ByVal hConsoleOutput As Long, lpBuffer As Any, ByVal _
nNumberOfCharsToWrite As Long, lpNumberOfCharsWritten As Long, _
lpReserved As Any) As Long

Public Const STD_OUTPUT_HANDLE = -11&





Добавьте на форму кнопку и введите следующий код:

Dim hConsole As Long

Private Sub Command1_Click()
Dim Result As Long, sOut As String, cWritten As Long
sOut = "Hi There" & vbCrLf
Result = WriteConsole(hConsole, ByVal sOut, Len(sOut), cWritten, _
ByVal 0&)
Shell "C:\TEST.BAT"
End Sub

Private Sub Form_Load()
If AllocConsole() Then
hConsole = GetStdHandle(STD_OUTPUT_HANDLE)
If hConsole = 0 Then MsgBox "Couldn't allocate STDOUT"
Else
MsgBox "Couldn't allocate console"
End If
End Sub

Private Sub Form_Unload(Cancel As Integer)
CloseHandle hConsole
FreeConsole
End Sub





Запустите приложение. Появится пустое окно консоли.


Кликните по кнопке. В консоле должны появиться текст в sOut и вывод из bat-файла.


Закройте форму. Окно консоли должно завершиться.
Mazzi вне форума