CMP0172

在版本 3.31 中新增。

CPack 模組預設在 CPack WIX Generator 中啟用每機器安裝。

CPack WIX GeneratorCPACK_WIX_INSTALL_SCOPE 選項控制產生的 Windows Installer 套件的範圍。當 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_SCOPENEW 行為是預設將 CPACK_WIX_INSTALL_SCOPE 設定為 perMachine

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

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

注意

策略的 OLD 行為依定義已被棄用,並可能在未來版本的 CMake 中移除。