VB中Shell執(zhí)行CMD命令使用如下代碼
成都創(chuàng)新互聯(lián)從2013年創(chuàng)立,先為內黃等服務建站,內黃等地企業(yè),進行企業(yè)商務咨詢服務。為內黃企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。
Shell?"cmd.exe?/c?你要執(zhí)行的命令"
其中要執(zhí)行的命令中需要注意空格問題 如果一個參數(shù)中有空格就需要使用雙引號引起來,雙引號在VB字符串中使用兩個雙引號("")表示。
例如:
Shell?"cmd.exe?/c?copy?""d:\ab?c.txt""?""d:\a?bc.txt"""
Shell 函數(shù)
執(zhí)行一個可執(zhí)行文件,返回一個 Variant (Double),如果成功的話,代表這個程序的任務 ID,若不成功,則會返回 0。
語法
Shell(pathname[,windowstyle])
Shell 函數(shù)的語法含有下面這些命名參數(shù):
部分 描述
pathname 必要參數(shù)。Variant (String),要執(zhí)行的程序名,以及任何必需的參數(shù)或命令行變量,可能還包括目錄或文件夾,以及驅動器。
Windowstyle 可選參數(shù)。Variant (Integer),表示在程序運行時窗口的樣式。如果 windowstyle 省略,則程序是以具有焦點的最小化窗口來執(zhí)行的。
windowstyle 命名參數(shù)有以下這些值:
常量 值 描述
vbHide 0 窗口被隱藏,且焦點會移到隱式窗口。
VbNormalFocus 1 窗口具有焦點,且會還原到它原來的大小和位置。
VbMinimizedFocus 2 窗口會以一個具有焦點的圖標來顯示。
VbMaximizedFocus 3 窗口是一個具有焦點的最大化窗口。
VbNormalNoFocus 4 窗口會被還原到最近使用的大小和位置,而當前活動的窗口仍然保持活動。
VbMinimizedNoFocus 6 窗口會以一個圖標來顯示。而當前活動的的窗口仍然保持活動。
說明
如果 Shell 函數(shù)成功地執(zhí)行了所要執(zhí)行的文件,則它會返回程序的任務 ID。任務 ID 是一個唯一的數(shù)值,用來指明正在運行的程序。如果 Shell 函數(shù)不能打開命名的程序,則會產(chǎn)生錯誤。
注意 缺省情況下,Shell 函數(shù)是以異步方式來執(zhí)行其它程序的。也就是說,用 Shell 啟動的程序可能還沒有完成執(zhí)行過程,就已經(jīng)執(zhí)行到 Shell 函數(shù)之后的語句。
shell "cmd /c dir c:\*.*",1
msgbox("執(zhí)行完畢")
另外CMD窗口是無法隱藏執(zhí)行的,當然,你可以換另外一個思路,就是啟用一個新線程,然后將線程后臺執(zhí)行CMD語句,這樣前臺就看不到CMD窗口了
請參考下面的示例
shell "cmd /c dir",1'/c表示執(zhí)行完即關閉窗口
shell "cmd /k dir",1'/k表示執(zhí)行完停留
shell "cmd /c dir pause",1'多條語句可用連接
關于cmd的具體用法可以在命令提示符下敲入cmd/?看看
太多了,只列舉一些典型的:
CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
[[/S] [/C | /K] string]
/C 執(zhí)行字符串指定的命令然后終斷
/K 執(zhí)行字符串指定的命令但保留
/S 在 /C 或 /K 后修改字符串處理(見下)
/Q 關閉回應
/D 從注冊表中停用執(zhí)行 AutoRun 命令(見下)
/A 使向內部管道或文件命令的輸出成為 ANSI
/U 使向內部管道或文件命令的輸出成為 Unicode
/T:fg 設置前景/背景顏色(詳細信息,請見 COLOR /?)
/E:ON 啟用命令擴展(見下)
/E:OFF 停用命令擴展(見下)
/F:ON 啟用文件和目錄名稱完成字符 (見下)
/F:OFF 停用文件和目錄名稱完成字符(見下)
/V:ON 將 ! 作為定界符啟動延緩環(huán)境變量擴展。如: /V:ON 會
允許 !var! 在執(zhí)行時允許 !var! 擴展變量 var。var 語法
在輸入時擴展變量,這與在一個 FOR 循環(huán)內不同。
/V:OFF 停用延緩的環(huán)境擴展。
VB.NET 里面會有一個main方法表示函數(shù)的入口
main方法的參數(shù)就是命令行傳給它的
shutdown.exe能直接調用是因為你的環(huán)境變量有C盤的windows目錄
你只要在你程序的輸出目錄(一般為bin)里面打開命令行輸入程序名稱.exe就可以直接執(zhí)行你的窗體
如果你要調試輸入命令的效果,你打開你項目的屬性,找到調試里面的命令行參數(shù),在里面輸入測試參數(shù)就能在你main函數(shù)里面看到結果了
那如果你想打開任何命令行都可以執(zhí)行你的窗體程序,那你把你程序的安裝目錄設置為環(huán)境變量,這樣就可以直接執(zhí)行這個命令了
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
Dim?b?As?Boolean?=?My.Computer.Network.Ping("192.168.1.1",?1000)?'返回ping結果,true表示通,false表示不通,1000表示1000毫秒內返回結果
My.Computer.FileSystem.WriteAllText("c:\1.txt",?b.ToString??vbCrLf,?True)?'寫入到c盤的1.txt文件中并自動加換行回車符
End?Sub
調用c:\1.bat,可以這樣:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Shell("cmd.exe /c call c:\1.bat", AppWinStyle.NormalFocus)
End Sub
分享名稱:vb.netcmd命令,vbs調用cmd
文章網(wǎng)址:http://chinadenli.net/article22/dsiipcc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、網(wǎng)站收錄、響應式網(wǎng)站、網(wǎng)站排名、外貿(mào)建站、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)