2010-10-12 66 views
0

嘿所有,我想从我的VB程序发送一些文本到控制台框(DOS框),但我似乎无法得到它的工作。VB.net sendmessge到控制台框

这里是我当前的代码:

Dim blah As Long 
Private Const WM_GETTEXT As Integer = &HD 
Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal msg As Integer, ByVal wParam As IntPtr, ByVal lParam As String) As IntPtr 

blah = FindWindow1(vbNullString, "Form1") 
blah = FindWindowEx(blah, vbNullString, "ConsoleWindowClass", vbNullString) 
Debug.Print(blah) 
SendMessage(blah, WM_SETTEXT, 200, "A") 

虽然,它的工作,它只是把一个一个标题栏,而不是在控制台中。

任何帮助将是伟大的! :O)

大卫

回答

1

我还没有尝试过,但我想你可能想看看AttachConsole您的进程连接到命令行程序的控制台。那么你应该可以使用我所假设的Console.WriteLine和类似的方法。

您可以在PInvoke页面找到一个示例(使用C#,但应该很容易使用其中一个在线转换器转换为VB)。

+0

除非他想与控制台中的程序进行交互。 – SLaks 2010-10-12 15:23:27

+0

我不知道,谢谢。 – 2010-10-12 16:19:28