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 |
|
IID |
IID_ISession定義為 000C109E-0000-0000-C000-0000000000046 |
另請參閱