2013年9月19日 星期四

[函數] VB Shell 來執行電腦中的執行檔

VB 中,有一個函數是可以呼叫一個執行檔,返回一個 Variant (Double),如果成功的話,代表這個程式的任務 ID,若不成功,則會返回 0。

語法
Shell(pathname,windowstyle)



說明
一、pathname(必輸入)
打入你要執行的執行檔名稱(EX: cmd.exe、cale.exe),打入所要執行的程式檔絕對路徑(EX: C:\Program Files (x86)\Adobe\Adobe Photoshop CC\Photoshop.exe)以及任何必需的參數或命令列變數。

二、windowstyle
表示在程式運行時視窗的樣式。如果 windowstyle 省略,則程式是以具有焦點的最小化視窗來執行的。但有時這個參數會失效。

數值
常數
說明
0
vbHide
視窗被隱藏,且焦點會移到隱式視窗。
1
VbNormalFocus
視窗具有焦點,且會還原到它原來的大小和位置。
2
VbMinimizedFocus
視窗會以一個具有焦點的圖示來顯示。
3
VbMaximizedFocus
視窗是一個具有焦點的最大化視窗。
4
VbNormalNoFocus
視窗會被還原到最近使用的大小和位置,而當前活動的視窗仍然保持活動。
6
VbMinimizedNoFocus
視窗會以一個圖示來顯示。而當前活動的的視窗仍然保持活動。


範例

用一般方式來執行電腦中的小算盤
Shell("calc.exe")


先執行 PhotoShop.exe 後再將它最大化並有焦點
Shell("C:\Program Files (x86)\Adobe\Adobe Photoshop CC\Photoshop.exe", vbMaximizedFocus)


執行命令提示元字後自動輸入「taskkill /f /im calc.exe」並執行(此方法在 Windows 8 好像無法執行,我在之前的電腦是可以的,不確定)
Shell("cmd.exe taskkill /f /im calc.exe")