【 utils.shellexecute 】
格式:
error = utils.shellexecute (filename, params, defdir, operation,
show_command)
中文:
error = utils.shellexecute (檔名, 傳遞參數, 預設路徑, 操作, 顯示指令
參數)
說明:
執行系統的shell 指令,shell 意指加殼或封裝,兩岸用語的差異。只有
第一個參數(檔名)是必要的,其餘都是可選的。
1.filename :要打開或印出的檔案,或要開啟或瀏覽的資料夾。該函
數可以直接打開執行檔或文字檔。也可以直接印出文字
檔。
2.params :一個指定要傳遞給應用程式的字串之參數。如果
filename 指定一個文字檔, PARAMS 應該是0或“”。
3.defdir :一個字串,指定預設路徑。
4.operation :這個參數可以是零或“” 。此時該函數開啟 filename
所指定的檔案。下面的操作字串是有效的:
a.open :該函數打開由 filename 指定的檔案。檔案可以是一個
執行檔或文字檔,也能是一個資料夾。
b.print :該函數打印由filename指定的檔案。該檔案應是一個
文字檔。檔案如果是一個執行檔,該函數將開啟檔案
,似乎已鎖定為“開啟”。
c.explorer”:這個功能用來瀏灠經 filename 指定的資料夾。
5.show_command:如果filename所指定的是一個執行檔, show_command
指定該應用程式被打開時將如何顯示。這個參數可以
是零在這種情況下,它預設值為 1 - 推薦的預設值設
定。這個參數可以是下列值之一:
0 :隱藏視窗並聚焦到另一個視窗。
1 :聚焦並顯示一個視窗。如果視窗被最小化或最大化,系統會將它
恢復到其原來的大小和位置。第一次顯示視窗時,應用程式應指
定此參數。
2 :聚焦視窗並最小化。
3 :聚焦視窗並最大化。
4 :當活動視窗保持活動狀態,以最後的大小和位置顯示。
5 :聚焦視窗,並以目前大小和位置顯示。
6 :指定視窗最小化並聚焦到 z - order 規則下的次順位視窗。
7 :顯示視窗為最小化視窗。活動視窗保持活動狀態。
8 :以當前狀態顯示視窗。活動視窗保持活動狀態。
9 :聚焦並顯示視窗。當視窗被最小化或最大化,系統將它恢復到原
來的大小和位置。還原最小化視窗時,應指定此值。
10:以 STARTUPINFO 結構中指定的 SW_flag 來設定其顯示狀態,透
過啟動該應用程式傳遞給 theCreateProcess 功能。應用程式應
該呼叫的 ShowWindow 使用此標誌來設定初始顯示其主視窗的狀
態。
如果執行成功,該函數回傳 true 。如果沒有,則回傳nil緊隨其後的錯誤
消息。您可以使用“assert”來測試失敗。
範例:
assert (utils.shellexecute ("c:/mushclient/worlds/SMAUG.MCL"))
-- document
assert (utils.shellexecute ("http://www.gammon.com.au/"))
-- web page
assert (utils.shellexecute ("mailto:someone@somewhere.com"))
-- open mail client
assert (utils.shellexecute ("c:/", nil, nil, "explore"))
-- explore disk
assert (utils.shellexecute ("c:/readme.txt", nil, nil, "print"))
-- print a file
--==-==--==-==--==-==--==-==--==-==--==-==--==-==--==-==--==-==--==-==--==-==--