运行一个可执行程序,并且如果该程序仍然在运行,则返回一个包含该程序的进程 ID 的整数。
成都创新互联长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为宛城企业提供专业的成都网站制作、成都网站建设,宛城网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
Public Function Shell( _
ByVal PathName As String, _
Optional ByVal Style As AppWinStyle = AppWinStyle.MinimizedFocus, _
Optional ByVal Wait As Boolean = False, _
Optional ByVal Timeout As Integer = -1 _
) As Integer
参数
PathName
必选。String。要执行的程序的名称,以及任何必选的参数和命令行开关。PathName 也可以包含驱动器和目录路径或文件夹。
如果您不知道程序的路径,可以使用 My.Computer.FileSystem.GetFiles 方法进行查找。例如,调用 My.Computer.FileSystem.GetFiles("C:\", True, "testFile.txt") 可以返回驱动器 C:\ 上任意处的名称为 testFile.txt 的每个文件的完整路径。
Style
可选。AppWinStyle。从 AppWinStyle 枚举中选择的值,指定要在其中运行程序的窗口的样式。如果省略 Style,则 Shell 将使用 AppWinStyle.MinimizedFocus,它启动程序后最小化并带有焦点。
Wait
可选。Boolean。指示 Shell 函数是否应等待程序完成的值。如果省略 Wait,Shell 将使用 False。
Timeout
可选。Integer。Wait 为 True 时要等待的毫秒数。如果省略 Timeout,则 Shell 使用 -1 表示没有超时,并且 Shell 直到程序完成才会返回。因此,如果省略 Timeout 或将其设置为 -1,则 Shell 可能永远不会将控制返回您的程序。
如果你要获得显示的结果,我知道的方法是使用一个dos管道(名字玄乎,实际上没什么)
在命令的最后加一个 (filename)
这样这个命令所有的显示结果就背记录在(filename)里面了
比如
dir a.txt
这样dir显示的结果就是背全部记录在a.txt里面
用个例子进行演示一下,比如在VB中调用DOS命令,如何得知DOS命令是否已经执行完毕
方法如下:
Set wshl = CreateObject("wscript.shell")
wshl.Run "ping 9zp.com", 1, True 'true代表等待完成,1代表显示运行窗口
wshl.Run "sqlcmd -S 192.168.8.58 -U sa -P sa~!@# -d pubs -Q ""insert into test(MatNo) Values('" Trim(Text1.Text) "')""", 0, True 'true代表等待完成,1代表显示运行窗口"
MsgBox "完成".
你要用System.IO去截获命令提示行(也就是cmd)的流信息,然后才能填充到你的winform界面控件中去。
运行一个可执行程序,并且如果该程序仍然在运行,则返回一个包含该程序的进程
ID
的整数。
Public
Function
Shell(
_
ByVal
PathName
As
String,
_
Optional
ByVal
Style
As
AppWinStyle
=
AppWinStyle.MinimizedFocus,
_
Optional
ByVal
Wait
As
Boolean
=
False,
_
Optional
ByVal
Timeout
As
Integer
=
-1
_
)
As
Integer
参数
PathName
必选。String。要执行的程序的名称,以及任何必选的参数和命令行开关。PathName
也可以包含驱动器和目录路径或文件夹。
如果您不知道程序的路径,可以使用
My.Computer.FileSystem.GetFiles
方法进行查找。例如,调用
My.Computer.FileSystem.GetFiles("C:\",
True,
"testFile.txt")
可以返回驱动器
C:\
上任意处的名称为
testFile.txt
的每个文件的完整路径。
Style
可选。AppWinStyle。从
AppWinStyle
枚举中选择的值,指定要在其中运行程序的窗口的样式。如果省略
Style,则
Shell
将使用
AppWinStyle.MinimizedFocus,它启动程序后最小化并带有焦点。
Wait
可选。Boolean。指示
Shell
函数是否应等待程序完成的值。如果省略
Wait,Shell
将使用
False。
Timeout
可选。Integer。Wait
为
True
时要等待的毫秒数。如果省略
Timeout,则
Shell
使用
-1
表示没有超时,并且
Shell
直到程序完成才会返回。因此,如果省略
Timeout
或将其设置为
-1,则
Shell
可能永远不会将控制返回您的程序。
如果你要获得显示的结果,我知道的方法是使用一个dos管道(名字玄乎,实际上没什么)
在命令的最后加一个
(filename)
这样这个命令所有的显示结果就背记录在(filename)里面了
比如
dir
a.txt
这样dir显示的结果就是背全部记录在a.txt里面
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款