共用方式為


Windows Installer) (會話物件

Session物件會控制安裝程式。 它會開啟 Installer 資料庫,其中包含安裝資料表和資料。 此物件與一組標準動作函式相關聯,每個函式都會對一或多個資料表的資料執行特定作業。 可能會針對特定產品安裝新增其他自訂動作。 基本引擎函式是一種排序器,可從指定的序列資料表擷取循序記錄、評估任何指定的條件運算式,以及執行指定的動作。 引擎無法辨識的動作會延後至 UI 處理常式物件進行處理,通常是對話方塊順序。

請注意,單一進程只能開啟一個 Session 物件。

成員

Session物件具有下列類型的成員:

方法

Session物件具有這些方法。

方法 Description
DoAction 執行指定的動作。
EvaluateCondition 評估包含符號和值的邏輯運算式,並傳回列舉 msiEvaluateConditionErrorEnum 的整數。
FeatureInfo 會傳回 FeatureInfo 物件,其中包含指定之特徵的描述性資訊。
FormatRecord 從範本和記錄資料傳回格式化字串。
消息 執行任何已啟用的記錄作業,並將執行延遲至與引擎相關聯的 UI 處理常式物件。
序列 在指定的資料表上開啟查詢,依 Sequence 資料行中的數位排序動作。 針對擷取的每個資料列,會呼叫 DoAction 方法,前提是任何提供的條件運算式都不會評估為 False。
SetInstallLevel 將目前安裝的安裝層級設定為指定的值,並重新計算所有功能的 [選取] 和 [已安裝] 狀態。

 

屬性

Session物件具有這些屬性。

屬性 存取類型 Description
ComponentCosts
會傳回 RecordList 物件,列舉安裝元件所需的每個磁片磁碟機磁碟空間。
ComponentCurrentState
傳回所指定元件的目前已安裝狀態。
ComponentRequestState
取得或要求元件資料表中資料列的 Action 狀態變更。
資料庫
傳回目前安裝會話的資料庫。
FeatureCost
傳回指定功能及其父功能所需的 512 位元組 (總磁碟空間量,) (到功能資料表的根目錄) 。
FeatureCurrentState
傳回所指定功能的目前已安裝狀態。
FeatureRequestState
讀取/寫入
取得或要求功能記錄和子記錄的選取狀態變更。
FeatureValidStates
傳回整數,代表位旗標,每個相關位都代表指定功能的有效安裝狀態。
安裝程式
傳回使用中的安裝程式物件。
語言 (會話物件)
表示目前安裝會話所使用的數值語言識別項。
[模式]
這個屬性是值,表示目前安裝會話的指定模式旗標。
ProductProperty
表示具名安裝程式屬性的字串值。
屬性 (Session 物件)
讀取/寫入
從產品資料庫擷取產品屬性。
SourcePath
提供來源媒體或伺服器映射上所指定資料夾的完整路徑。
TargetPath
讀取/寫入
提供安裝目標磁片磁碟機上所指定資料夾的完整路徑。
VerifyDiskSpace
如果有足夠的磁碟空間存在,則傳回 true;如果磁片已滿則傳回 false。

 

規格需求

需求
版本
Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer
DLL
Msi.dll
IID
IID_ISession定義為 000C109E-0000-0000-C000-0000000000046

另請參閱

Windows Installer 腳本範例