共用方式為


個別應用程式組態

個別應用程式組態會將特定應用程式的相依性從一個並存元件版本重新導向至另一個版本的元件。 如果特定應用程式的正確作業需要不同於通常指定為 預設組態的元件版本,或 發行者組態,則個別應用程式組態可能會變得必要。 例如,發行者對元件版本的全域更新可能會修正元件,但會中斷此特定應用程式。 在此情況下,可能會使用個別應用程式組態來讓應用程式繼續使用先前的元件版本執行。

從 Windows Server 2003 開始,個別應用程式組態一律會根據個別應用程式覆寫 預設組態。 每個應用程式組態只有在 應用程式組態檔 指定 apply=“no”publisherPolicy 中,且應用程式相容性資料庫中有對應的專案時,每個應用程式組態才會覆寫 發行者組態。

注意

在 Windows XP 上,個別應用程式組態會以個別應用程式為基礎覆寫 預設組態 發行者組態。 如需詳細資訊,請參閱在 Windows XP 個別應用程式組態。

 

從 Windows Server 2003 開始,如果 應用程式組態檔 指定 apply=“yes”publisherPolicy 中的 EnableAppConfig 旗標會覆寫 發行 者組態,而 Application Compatibility 資料庫中的應用程式會設定 EnableAppConfig 旗標。 使用個別應用程式組態覆寫發行者設定的功能可讓應用程式在 Safemode 中執行。 如需應用程式相容性資料庫和 Safemode 的詳細資訊,請參閱 Windows 應用程式相容性工具組。 您可以從 https://www.microsoft.com/downloads取得 Windows 應用程式相容性工具組。

注意

如果您隨附 應用程式組態檔 (.config file) 的元件,指定 publisherPolicy中的 apply=“no”,這會導致啟用內容產生失敗。 如果您在 publisherPolicy中提供指定 apply=“yes” 的 .config 檔案,則會忽略個別應用程式組態。

 

應用程式管理員可以藉由撰寫和安裝應用程式組態檔及更新應用程式相容性資料庫,來實作個別應用程式組態。 然後,應該將應用程式組態檔部署並安裝到與應用程式可執行檔相同的資料夾中。 如需檔案架構的清單,請參閱 應用程式組態檔架構。 應用程式相容性資料庫必須散發,如應用程式相容性工具組中所述。

注意

如果您的應用程式在 Safemode 中執行,它將不會收到任何重要的安全性修正或錯誤修正,元件發行者可能會以發行者組態檔的形式發出問題。 因此,使用個別應用程式組態的應用程式可能仍然不安全,或即使在套用這些修正的新元件套用至系統之後,仍無法正確運作。 基於這個理由,應用程式開發人員絕不應隨附具有個別應用程式組態的應用程式。 當發行者組態中斷應用程式時,只有公司系統管理員才應該使用個別應用程式組態做為暫時修正。 在此情況下,永久解決方案是元件開發人員和應用程式的開發人員必須共同合作,以確保具有發行者設定的元件完全回溯相容。

 

以下是應用程式組態檔的範例。 如需詳細資訊,請參閱應用程式組態檔。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<configuration>
 <windows>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
   <assemblyIdentity  processorArchitecture="X86" name="Microsoft.Windows.mysampleApp" type="win32" version="1.0.0.0"/>
   <publisherPolicy apply="no"/>                     
   <dependentAssembly>
    <assemblyIdentity type="win32" processorArchitecture="x86" name="Microsoft.Windows.SampleAssembly" publicKeyToken="0000000000000000"/>
    <bindingRedirect oldVersion="2.0.0.0" newVersion="2.0.1.0"/>
   </dependentAssembly>
  </assemblyBinding>
 </windows>
</configuration>

應用程式管理員應該將必要的專案新增至應用程式相容性資料庫。 從 https://www.microsoft.com/downloads下載並安裝 Windows 應用程式相容性工具組 2.6。 使用工具組中所述的相容性系統管理員,建立新的自定義或更新現有的資料庫。 您想要為應用程式的相容性層選擇相容性修正程式為 EnableAppConfig。 您必須先測試應用程式,才能安裝新的相容性資料庫。