如何让命令执行完后返回执行结果.

LuBingLin 2003-08-01 02:06:42
如:运行-> CMD -> Net View
---------------------------------------------
计算机A
计算机B
计算机C
计算机D

我想在VB中用 Shell"Net View" ,执行完后程序要获得执行结果。再输入到指定的文本框中。

...全文
127 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
planetike 2003-08-27
  • 打赏
  • 举报
回复
'在他们的基础上,自己试了一下,是可以的.
Private Const WAIT_TIMEOUT = &H102&

Public Function ShellForWait(sAppName As String, Optional ByVal lShowWindow As VbAppWinStyle = vbMinimizedFocus, Optional ByVal lWaitTime As Long = 0) As Boolean
Dim lID As Long, lHnd As Long, lRet As Long
On Error Resume Next
lID = Shell(sAppName, lShowWindow)
If lID > 0 Then
lHnd = OpenProcess(SYNCHRONIZE, 0, lID)
If lHnd <> 0 Then
Do
lRet = WaitForSingleObject(lHnd, lWaitTime)
DoEvents
Loop While lRet = WAIT_TIMEOUT
CloseHandle lHnd
ShellForWait = True
Else
ShellForWait = False
End If
Else
ShellForWait = False
End If
End Function


Private Sub Command1_Click()
ShellForWait "cmd /c net view >c:\a.txt",,&HFFFF
Open "c:\a.txt" For Input As #1
While Not EOF(1)
Line Input #1, iStr
Debug.Print iStr
Wend
Close #1
End Sub

LuBingLin 2003-08-26
  • 打赏
  • 举报
回复
不好意思最较忙忘了上来看看,请多多见谅......
不会也帮忙顶顶......
jlum99 2003-08-19
  • 打赏
  • 举报
回复
论坛里相同的东西很多,自己查啊
lsftest 2003-08-19
  • 打赏
  • 举报
回复
'98下用:
x = Shell("command /c ipconfig >c:\bohao\1.txt", 1)

’nt/2000下用
x = Shell("cmd /c ipconfig >c:\bohao\1.txt", 1)

以前试过行得通的,但net view不知道行不行,现在没有测试环境,自己试试吧
jmserver 2003-08-19
  • 打赏
  • 举报
回复
太简单,建立管道吗!!!
msn:java_happy@hotmail.com
LuBingLin 2003-08-19
  • 打赏
  • 举报
回复
请给个示例?
black_ant 2003-08-12
  • 打赏
  • 举报
回复
可以用内存共享!
LuBingLin 2003-08-12
  • 打赏
  • 举报
回复
没人会么?
LuBingLin 2003-08-04
  • 打赏
  • 举报
回复
各们老大,请打开你们的电脑运行你们的VB,试一个你们的语句,再发表好么...
Santos 2003-08-04
  • 打赏
  • 举报
回复
这样做
Shell"Net View > a.txt"
然后,再打开a.txt,将读取到的内容写入文本框
LuBingLin 2003-08-04
  • 打赏
  • 举报
回复
能否举个例子.
Fnems 2003-08-02
  • 打赏
  • 举报
回复

win2k的Net命令实际是调用API实现的。有相当一部分使用了NetAPI32.dll中的API函数。这个问题可能与NetServerEnum有关。
zjcxc 2003-08-02
  • 打赏
  • 举报
回复
try:


Sub test()
Dim iStr$

Shell "net view > c:\a.txt", vbHide --将执行结果输出到c:\a.txt中
Open "c:\a.txt" For Input As #1 --从c:\a.txt文件中读取结果
While Not EOF(1)
Line Input #1, iStr
Debug.Print iStr
Wend
Close #1
End Sub
LuBingLin 2003-08-02
  • 打赏
  • 举报
回复
你的回答太.........
不明白!
kmzs 2003-08-01
  • 打赏
  • 举报
回复
写在文件中、注册表中。。。

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧