有一个list1,一个按键Command1点击Private Sub Command1_Click()首先清空list1
让计算机进入dos,运行nslookup,运行结束后,如:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\Administrator>nslookup
Default Server:  cache5-bj
Address:  200.98.4.1然后以上内容只要C:\Documents and Settings\Administrator>nslookup
Default Server:  cache5-bj
Address:  200.98.4.1这一段在list1里显示,该怎么写,进入dos运行是在后台运行,前台不能看到的

解决方案 »

  1.   

    试试用匿名管道  CreatePipe 
      

  2.   

    顶阿勇,很久不见了!以下是阿勇这种方案的实现,参见5楼:http://topic.csdn.net/u/20080314/21/5aa66dea-2a8a-45a1-bd38-d305bbb1b8fa.html
      

  3.   

    对,叫管道吧,别老叫DOS了:)
      

  4.   

    Private Sub Command1_Click()
    ss = "nslookup "
    Debug.Print ss
    Shell "cmd.exe /k " & ss & " & exit", _
    vbNormalFocus
    End Sub
    我现在这样可以得到结果,但是怎么能够隐藏执行并让显示结果写到list1呢
      

  5.   

    既然老马的高科技看不懂,那就用山寨的吧
    Private Sub Command1_Click()
    ss = "nslookup "
    Debug.Print ss
    Shell "cmd.exe /k " & ss & " > d:\888.txt ", vbHide
    End Sub
    然后 读取 d:\888.txt 文本文件中的值总会吧。
      

  6.   

    漏了 exitShell "cmd.exe /k " & ss & " exit > d:\888.txt ", vbHide