この記事では、必要な C++ ランタイム ライブラリを参照するデスクトップ ブリッジ アプリケーションを作成する方法について説明します。
元の製品バージョン: Windows 10
元の KB 番号: 3176696
まとめ
C++ ランタイム ライブラリに依存する Windows デスクトップ アプリケーションでは、アプリケーション パッケージの作成時に、デスクトップ ブリッジに対応するバージョンの C++ ランタイム フレームワーク パッケージを指定する必要があります。 これは、Visual Studio または Visual C++ ランタイム再頒布可能パッケージ (VCRedist) に含まれる C++ ランタイム ライブラリを再配布するのではなく、行う必要があります。 デスクトップ ブリッジ コンテナーで実行される Windows デスクトップ アプリケーションでは、Visual Studio または VCRedist に含まれる C++ ランタイム ライブラリを使用できません。 デスクトップ ブリッジ コンテナーで実行されていて、正しくないバージョンの C++ ランタイム ライブラリを使用するアプリケーションは、ファイル システムやレジストリなどのリソースにアクセスしようとすると失敗する可能性があります。 この記事では、適切な C++ ランタイム ライブラリを含むデスクトップ ブリッジ コンテナーを作成する方法について説明します。
デスクトップ フレームワーク パッケージをインストールして更新する方法
Microsoft では、アプリケーションが Microsoft Store を通じて配布されるデスクトップ アプリケーションから C++ ランタイムを参照できるようにする C++ ランタイム フレームワーク パッケージを提供しています。 これらのパッケージは Microsoft Store を通じて配布および更新され、C++ UWP フレームワーク パッケージと同様に処理されます。
開発とテストの目的で、オプションの C++ (v145) ユニバーサル Windows ツール コンポーネントを使用して ユニバーサル Windows プラットフォーム開発 ワークロードを選択すると、デバッグとリテールの両方の appx パッケージの現在のバージョン (v14) が Visual Studio 2026 に含まれます。 パッケージは %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0 にあります。
従来のデスクトップ フレームワーク パッケージ
v11.0 や v12.0 などのデスクトップ アプリケーション用の以前の C++ ランタイム フレームワーク パッケージは、サポートされなくなりました。 ただし、次の場所からダウンロードしてインストールできます。
- デスクトップ ブリッジ用 C++ ランタイム v11.0 フレームワーク パッケージ (Project Centennial)
- デスクトップ ブリッジ用 C++ ランタイム v12 フレームワーク パッケージ (Project Centennial)
C++ ランタイム フレームワーク パッケージは、 %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop下のサブフォルダーにコピーされます。
Add-AppxPackage PowerShell コマンドレットを使用して、パッケージを手動でインストールできます。
デスクトップ フレームワーク パッケージを参照する方法
アプリケーションの AppxManifest.xml ファイルで、適切なフレームワーク パッケージに対応する PackageDependency 値を指定します。
バージョン 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>バージョン 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>バージョン 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>
アプリケーションは、デプロイ時に依存関係パッケージから C++ ランタイム DLL をインストールします。