onfirstuibefore:函式塊用於第一安裝應用時安裝部件前所要完成的任務。一般在這裡進行下列設:
1. 設定遮蔽
2. 顯示歡迎資訊,軟體協議書或關於軟體安裝的其他說明資訊
3. 從使用者處獲取資訊,如註冊資訊,安裝的目標位置,安裝型別等
用於全域性事件處理程式和異常處理程式的setup.rul
用於部件事件處理程式的componentevents.rul
每個安裝指令碼都包含宣告和函式塊。宣告可以出現在函式塊之前或是出現在乙個函式語句與該函式的begin語句之間。installshield指令碼一般具有如下結構形式:
//常量定義,全域性資料宣告和函式宣告
//函式塊
所有安裝指令碼均以全域性資料的宣告開始。在這裡,你可以定義常量和宣告一些全域性函式。宣告 部分用來告訴編譯器後面的指令碼會用到哪些名稱,同時在函式和其屬性或值之間建立聯絡。當然,如果是內建函式,你就不必再對其加以宣告了。
1.//常量定義
#define product 「installshield」
#define limit 100
//變數宣告
char cval;
number nval;
string szname;
prototype displaymsg(number,string)
prototype getname(byref string)
installshield系統變數:
maintenance:在安裝程式第一次執行常量:是乙個定義了值的資料項。installshield支援兩種型別的常量:預定義常量和使用者自定義常量。srcdir:包含了源資料夾的完整路徑
srcdisk:包含了原始檔所在的驅動器名稱
supportdir:包含了用於存放臨時檔案的資料夾的完整路徑
sysinfo:包含了目標計算機上的操作平台的標誌資訊
targetdir:包含了安裝程式在硬碟上的目標資料夾的完整路徑
windir:包含了存放主操作環境的資料夾的完整路徑
windisk:包含了存放主操作環境的碟符的名稱
winsysdir:包含了windows\system資料夾的完整路徑
winsysdisk:包含了windows\system資料夾所在碟符的名稱
可以通過sprintfbox函式來了解某個預定義常量的值到底是什麼。
sprintfbox(information,」」,」%d」,component_field_selescted);
標點符號宣告:
大部分語句以「;」結束,這種要求也適合用於那些獨立的語句,例如end;,exit;,return;等等
關鍵字program,endprogram和begin等要放到單獨一行中,並且不帶任何標點符號,同時,每個函式塊的第一行也不帶標點符號
預處理語句後面不帶「;」,例如#define,#include
在符號後面要使用冒號,例如:start:starthere:
用括號將參數列擴起來,當參數列中有多個引數時,應該用逗號將它們隔開
操作符:
1. 位址操作符
2. 算術操作符
3. 賦值操作符
shell指令碼 指令碼學習例項
直接顯示的指令碼內容,執行結果,不再列出。1.判斷某一目錄是否存在,若不存在則新建此目錄 5 bin bash read p 請輸入乙個目錄 dirif d dir then echo 目錄已存在 else echo 目錄不存在,正在建立 mkdir p dir echo 建立完成 fi2.通過指令...
shell 指令碼學習
case var in pattern statement esac case 的指令碼語法是雙分號結尾的。sed e s i.86 i386 查詢替換。sed 流編輯器 將輸入流中的i.86替換成i386。是個萬用字元。輸入流的形式可能是 管道,檔案。shell d mkdir p 指令碼的條件執...
linux指令碼學習
最近又重新撿起了以前放在一邊的linux指令碼了,呵呵,最開始學習linux指令碼編寫是在搭建linux下的qmail郵件伺服器的時候。那時候由於qmail要安裝很多軟體包,所以就把命令整理成乙個指令碼來一次批處理執行,那時也學到了linux下的shell程式設計。指令碼其實多半就是終端命令的乙個集...