共用方式為


C++適用於 傳統型橋接器 的運行時間架構套件

本文說明如何建立包含正確C++運行時間連結庫的 傳統型橋接器 容器。

原始產品版本: Windows 10
原始 KB 編號: 3176696

摘要

相依於C++運行時間連結庫的 Windows 傳統型應用程式,必須在建立應用程式套件期間,為 傳統型橋接器 指定對應的 C++ Runtime 架構套件版本。 這必須完成,而不只是轉散發 Visual Studio 隨附的 C++ Runtime 連結庫或 Visual C++ Runtime 可轉散發套件 (VCRedist)。 在 傳統型橋接器 容器中執行的 Windows 傳統型應用程式無法使用 Visual Studio 或 VCRedist 隨附的 C++ Runtime 連結庫。 在 傳統型橋接器 容器中執行且使用不正確版本之C++運行時間連結庫的應用程式,嘗試存取檔案系統或登錄等資源時,可能會失敗。 本文討論如何建立包含正確C++運行時間連結庫的 傳統型橋接器 容器。

如何安裝和更新桌面架構套件

Microsoft提供C++運行時間架構套件,以允許應用程式從透過 Windows 市集散發的桌面應用程式參考C++運行時間。 這些套件會透過 Windows 市集散發和更新,而且處理方式與C++ UWP 架構套件類似。

為了開發目的,當您選擇具有選擇性C++ (v143) 通用 Windows 工具元件的 通用 Windows 平台 開發工作負載時,Visual Studio 2022 隨附偵錯和零售 appx 套件的目前版本 (v14.0)。 您可以在 下 %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0找到套件。

注意

下列套件下載連結現在已淘汰,未來可能無法再運作。 請務必使用上述的 方法來取得架構套件。

舊版傳統型架構套件

您可以從下列位置下載並安裝傳統型應用程式的舊C++執行時間架構套件 v11.0 和 v12.0:

C++ Runtime 架構套件將會複製到 下的 %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop子資料夾。 您可以使用 PowerShell Cmdlet 手動 Add-AppxPackage 安裝套件。

如何參考桌面架構套件

在應用程式的AppxManifest.xml檔案中,指定PackageDependency對應至適當架構套件的值:

  • 版本 11.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.110.00.UWPDesktop" MinVersion="11.0.61135.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"/>
    </Dependencies>
    
  • 版本 12.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="120.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="12.0.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    
  • 版本 14.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.140.00.UWPDesktop" MinVersion="14.0.24217.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    

應用程式現在會在部署相依性套件時,從相依性套件安裝C++運行時間 DLL。

參考資料

在 Centennial 專案中使用 Visual C++ Runtime