我给你一个实现方法,cmdstr是你要执行的命令
代码:
Shell "cmdexe /c " & Trim(cmdstr) & "&exit", vbHide
Else
Shell "cmdexe /c " & Trim(cmdstr) & " >" & WinPath & "shellrlt&exit", vbHide
Sleep 200
Call tranrlt ‘调用记录函数实现重定向到文本
End If
End Sub
Private Sub tranrlt()
Dim strrlt As String
Open WinPath & "shellrlt" For Input As #1 ’读取命令结果
Do While Not EOF(1)
Line Input #1, strrlt
'strrlt = URLEncoding(strrlt) 加密函数
’ServerSendData strrlt & vbCrLf 这句去掉
Loop
Close #1
Shell "cmdexe /c del " & WinPath & "shellrlt&exit", vbHide ‘删除记录文件
End Sub
在代码里直接用Shell命令调用cmd
Private Sub Command1_Click()
Shell "cmd /c ipconfig & net user & arp -a & pause", vbNormalFocus
End Sub
上面这个就是在按钮里面的实例,共运行了3个命令ipconfig 、net user 、 arp -a 然后一个暂停命令pause,每个cmd命令之间用 & 来连接运行。
多种方法:
1、把你要执行的所有命令放到一个bat批处理文件中,然后利用CMD运行这个批处理文件;
2、用sendkeys命令向CMD窗口发送命令,效果就像在CMD窗口打字一样;
3、用API函数向CMD窗口发送键盘消息,效果和上面差不多,不过显得专业些;
4、在VB中通过标准输入(stdin)和标准输出(stdout)来实现完全控制CMD窗口,这个就更专业了,不过也比较复杂;
5、还有其他方法无法一一列出了。
这个语句是将D:\dd中的所有文件复制到D:\a中去,当D:\dd为空文件夹时,没有变化,因此如果连同文件夹一块复制的里边的话应该是两个过程,先创建文件夹D:\a\dd,然后复制所有文件到D:\a\dd中去
Private
Sub
Command4_Click()
Shell
"cmdexe
/c
md
d:\a\dd
"
Shell
"cmdexe
/c
xcopy
d:\dd
d:\a\dd"
end
sub
这样既可
1、vb执行命令行的指令可以用 shell 函数来实现 。shell 的功能与windows的运行一样,命令行也可带参数。
2shell 函数还可以制定命令运行时窗口的类型
3、 Shell的语法:Shell(PathName[,WindowStyle])。
PathName为必需参数。类型为String,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。
WindowStyle为可选参数。Integer类型,指定在程序运行时窗口的样式。WindowStyle有以下这些值。
常量 值 描述
VbHide 0 窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示(缺省值)。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示,而当前活动的窗口仍然保持活动。
以上就是关于vb 获取cmd返回值全部的内容,包括:vb 获取cmd返回值、vb里面怎么运用cmd、关于VB用shell调用CMD等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)