CMP0172

在 3.31 版本中新增。

CPack 模組預設在 CPack WIX 產生器 中啟用每個機器的安裝。

CPack WIX 產生器CPACK_WIX_INSTALL_SCOPE 選項控制產生的 Windows 安裝程式套件的範圍。當 CPACK_WIX_VERSION 設定為 4 或更高版本時,預設範圍為 perMachine。但是,當使用 WIX 3 時,預設範圍為 NONE,並且 CPack 不會在套件規格中設定任何 InstallScope。產生的安裝程式需要管理員權限並安裝到系統範圍的 ProgramFiles 目錄,但開始功能表項目和解除安裝程式註冊僅為目前使用者建立。

CMake 3.30 及更舊版本中的 CPack 模組預設不指定任何 CPACK_WIX_INSTALL_SCOPE 值,因此 CPack 在使用 WIX 3 時預設不使用任何安裝範圍。CMake 3.31 和更新版本則傾向於將 CPACK_WIX_INSTALL_SCOPE 預設設定為 perMachine,以使所有 WIX 版本之間的行為保持一致。此政策為尚未更新以預期 perMachine 行為的專案提供相容性。

此政策的 OLD 行為是預設不設定 CPACK_WIX_INSTALL_SCOPE。此政策的 NEW 行為是預設將 CPACK_WIX_INSTALL_SCOPE 設定為 perMachine

此政策在 CMake 3.31 版本中引入。它可以使用 cmake_policy()cmake_minimum_required() 進行設定。如果未設定,CMake 預設不會發出警告,並使用 OLD 行為。

請參閱 CMAKE_POLICY_WARNING_CMP0172 變數的文件,以控制警告。

注意

政策的 OLD 行為 根據定義已棄用,並且可能會在未來版本的 CMake 中移除。