變更目錄的目標位置
可能的話,指定目錄目標位置的最佳方式是在安裝套件中撰寫 目錄數據表,以提供正確的位置。 如需更多資訊,請參閱 目錄表使用指南。
如果您需要在安裝時變更目錄位置,您有下列選項:
- 在命令行上設定 Public Property 的值,以指定目錄的位置。 在 CostFinalize Action期間,安裝程式所使用的內部目錄路徑會更新為 目錄數據表中列為索引鍵的屬性值。 如需詳細資訊,請參閱在命令行上 使用屬性 和 設定公用屬性值。
- 使用自訂動作指定目錄的位置。 如果自定義動作是在 CostFinalize Action之前執行,您可以使用 自定義動作類型 51 來設定格式化文字字串中的屬性值。 如果自定義動作在 CostFinalize 動作之後執行,您可以使用 自定義動作類型 35,從格式化的文字字串設定目錄路徑的值。 變更其中一個 系統資料夾屬性 的自定義動作應該同時包含在執行順序數據表中(InstallExecuteSequence 數據表 或 AdminExecuteSequence 數據表),以及使用者接 口 時序表 (InstallUISequence Table 和 AdminUISequence Table),讓資料夾在 完整 UI 和 基本 UI 安裝期間變更。
- 如果安裝執行 完整的 UI,您可以使用 MsiSetTargetPath 或 SetTargetPath ControlEvent 來設定目錄路徑。 請檢查 ProductState 屬性,以判斷包含此元件的產品是否已安裝,再呼叫 MsiSetTargetPath 或 SetTargetPath ControlEvent。 如果某些使用該路徑的元件已經為目前使用者或不同的使用者安裝,請勿嘗試變更目標目錄路徑。
下列限制適用於所有上述選項:
- 如果某個使用路徑的元件已經安裝在目前使用者或其他使用者的環境中,請勿嘗試變更目標目錄路徑。
- 請勿嘗試在 維護安裝期間變更目標目錄路徑,。