簡介
shell一個非常重要的特性是它可作為一種程式語言來使用。因為shell是一個解釋器,所以它不能對為它編寫的程式進行編譯,而是在每次從磁碟載入這些程式時對它們進行解釋。而程式的載入和解釋都是非常耗時的。 針對此問題,許多shell(如BourneAgainShell)都包含shell函式,shell把這些函式放在記憶體中,這樣每次需要執行它們時就不必再從磁碟讀入。shell還以一種內部格式來存放這些函式,這樣就不必耗費大量的時間來解釋它們。
語法
Shell(pathname[,windowstyle])
Shell 函式的語法含有下面這些命名參數:
部分 | 描述 |
pathname | 必要參數。Variant (String),要執行的程式名,以及任何必需的參數或命令行變數,可能還包括目錄或資料夾,以及驅動器。在Macintosh中,可以使用MacID函式來指定一個應用程式的署名而不是名稱。下面的例子使用了Microsoft Word的署名: Shell MacID("MSWD") |
Windowstyle | 可選參數。Variant (Integer),表示在程式運行時視窗的樣式。如果 windowstyle 省略,則程式是以具有焦點的最小化視窗來執行的。在Macintosh(系統7.0或更高)中,windowstyle僅決定當應用程式運行時是否獲得焦點。 |
常量 | 值 | 描述 |
vbHide | 0 | 視窗被隱藏,且焦點會移到隱式視窗。常數vbHide在Macintosh平台不可用。 |
VbNormalFocus | 1 | 視窗具有焦點,且會還原到它原來的大小和位置。 |
VbMinimizedFocus | 2 | 視窗會以一個具有焦點的圖示來顯示。 |
VbMaximizedFocus | 3 | 視窗是一個具有焦點的最大化視窗。 |
VbNormalNoFocus | 4 | 視窗會被還原到最近使用的大小和位置,而當前活動的視窗仍然保持活動。 |
VbMinimizedNoFocus | 6 | 視窗會以一個圖示來顯示。而當前活動的的視窗仍然保持活動。 |
說明
如果 Shell 函式成功地執行了所要執行的檔案,則它會返回程式的任務 ID。任務 ID 是一個唯一的數值,用來指明正在運行的程式。如果 Shell 函式不能打開命名的程式,則會產生錯誤。