如何实现远程执行了一个dos命令,并把结果返回显示在一个listbox上
我现在使用的是WMI连接,这是代码,命令也已经在远程执行了,但是我怎么获取到这个命令的结果,并且把所有命令的结果显示在listbox上呢?
Dim options As New ConnectionOption
Dim _scope as ManagementScope
options.Username = “aaa“
options.Password = "aaaa"
options.Authority = "ntlmdomain:strdomain"
If strdomain Is Nothing Then
_scope = New ManagementScope("\\" 10.0.0.1 "\root\cimv2", options)
_scope.Connect()
Else
options.Authority = "ntlmdomain:strdomain"
_scope = New ManagementScope("\\" 10.0.0.1 "\root\cimv2", options)
_scope.Connect()
End If
Dim o As New ObjectGetOptions()
Dim path As ManagementPath = New ManagementPath("Win32_Process")
Dim processClass As ManagementClass = New ManagementClass(_scope, path, o)
Dim inParams As ManagementBaseObject = processClass.GetMethodParameters("Create")
Dim a As ManagementObject
Dim b As String
b = Nothing
inParams("CommandLine") = "cmd.exe /c netstat -an"
--------------------编程问答-------------------- UP --------------------编程问答-------------------- 我提供你的一个比较土的方法,你没有更好的办法之前可以考虑使用
就是把执行结果重定向到一个文件中,然后再读取那个文件你总会吧
例如要执行:dir c:\ 默认会显示在屏幕上,你可以把命令写成 dir c:\ > c:\Result.txt 就可以把本来该显示在屏幕上的内容存在文件中了,你只要读取远程主机上的C:\Result.txt显示在自己的listbox中就可以了,然后再删除那个Result.txt文件即可。 --------------------编程问答-------------------- 我也是这么想的,但是这个方法我觉得怪怪的,请问有没有更好的办法呢? --------------------编程问答-------------------- 别的我就不会了,我没弄过这东西。
补充:.NET技术 , VB.NET