Never save something for a special occasion. Every day in your life is a special occasion.
分类:
2010-09-15 16:35:43
vb,Shell如何执行DOS的内部命令?
格式:shell "cmd /c" & "要执行的命令"
EG: shell "cmd /c" & "dir c: >c:/1.txt"
----------------------------------------------------------------
Shell "cmd /c" & "vol >g:/1.txt" 执行完毕,为何dos窗口不能自动关闭?
这句只是执行一个程序,如果程序自己不关闭,那VB也不会去关的。你可以尝试
shell "cmd.exe /k dir > c:\1.txt"
----------------------------------------------------------------
VB下不调用wscript.shell如何执行dos命令
因为要写一个在线压缩文档地代码,通常是服务器上wscript.shell来执行dos命令,但因为wscript.shell是个要挟性极强地东东,服务器必需卸载掉它。如今想通过其她方式来执行dos,或许是写一个类似wscript.shell地run函数,有这方面地高手请赐教。
回答1:Shell"c:\1.exe"
回答2:VB内置命令shell,API函数:winexec、shellexecute、createprocess。
回答3:dos命令保存到批处理文件Shell"c:\a.bat"
----------------------------------------------------------------
cmd版本问题。
shell调用dos命令执行 copy,如何在各个版本下都能用呀?
dim strcmd as string
strcmd="cmd /c copy *.* d:\tmp\"
shell strcmd,1
以上语句在win2000以上的系统是OK的,但win98/me却不行,因为低版本操作系统上没有 cmd.exe 。
因为我知道win98/me中,进行命令行窗口用的是 command,所以我将以上的代码改成:
dim strcmd as string
strcmd="command /c copy *.* d:\tmp\"
shell strcmd,1
可是提示出错“找不到command”, 我应该如何做?好象只能用 cmd,不能用command。
如果写成:
strcmd="command.com /c copy *.* d:\tmp\"
可以执行,但是文件复制不过来。
回答:
各个版本下都能用的方法是:将Dos命令加进 .bat ,使用shell执行bat。
示例:
在VB的“帮助→帮助文档”菜单中打开pdf文档。
Private Sub MNU_Guide_Click()
'Shell "Explorer.exe" + Space(1) + App.path + "\User's Guide\软件使用说明书.pdf"
Shell App.path + "\User's Guide\useage.bat"
End Sub
useage.bat内容
start "file" "%~dp0\软件使用说明书.pdf"