3

Visual Studio 2012 を使用してビルドされた Windows 8 アプリがあります。このアプリは、Visual Studio 2012 を使用してビルドされたサード パーティ コンポーネント (拡張 SDKとしてパッケージ化) も使用します。このコンポーネントは C++ を使用して作成されているため、拡張 SDK は Microsoft に依存しています。 .VCLibs.110.00 (Visual C++ 2012 ランタイム)。

現在、このアプリを Windows 8.1 用に再構築しようとしています。Visual Studio 2013 を使用してこのプロジェクトをビルドしようとすると、次のような動作が見られます (Bing Maps SDK は例としてのみ使用します。これは、VS 2012 を使用してビルドされた他の SDK に適用されます)。


Windows 8.0 Extension SDK コンポーネントを参照する Windows 8.1 C++ アプリ

ビルドは次のエラーで失敗します:

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): 警告 MSB3842: プロジェクト "cppapp" は SDK "Bing Maps for C#、C++、または Visual 「Windows 8.0」を対象としたアプリに対応した「Basic v1.113.0601.2」。「Bing Maps for C#、C++、または Visual Basic v1.113.0601.2」が「Windows 8.1」と互換性があるかどうかを確認するには、SDK の作成者に問い合わせるか、 http: //go.microsoft.com/fwlink/ ?LinkID=309181 を参照してください。 .

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): 警告 MSB3781: SDK "Bing.Maps.Xaml, Version=1.113.0601.2" は依存しています次の SDK (s) "Microsoft.VCLibs, version=11.0"。プロジェクトに追加されていないか、見つかりませんでした。これらの依存関係をプロジェクトに追加していることを確認してください。そうしないと、ランタイムの問題が発生する可能性があります。参照マネージャーを使用して、プロジェクトに依存関係を追加できます。

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): エラー MSB3841: SDK "Bing Maps for C#、C++、または Visual Basic" は、 「Windows 8.1」と互換性のない SDK「Microsoft.VCLibs, version=11.0」。「Windows 8.1」をサポートするバージョンの SDK「Bing Maps for C#、C++、または Visual Basic」を参照してください。

Windows 8.0 Extension SDK コンポーネントを参照する Windows 8.1 C# アプリ

ビルドは次のエラーで失敗します:

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): 警告 MSB3842: プロジェクト "csharpapp" は SDK "C#、C++、または Visual 用の Bing マップに依存しています「Windows 8.0」を対象としたアプリに対応した「Basic v1.113.0601.2」。「Bing Maps for C#、C++、または Visual Basic v1.113.0601.2」が「Windows 8.1」と互換性があるかどうかを確認するには、SDK の作成者に問い合わせるか、 http: //go.microsoft.com/fwlink/ ?LinkID=309181 を参照してください。 .

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): 警告 MSB3783: プロジェクト "csharpapp" は SDK "Microsoft Visual C++ ランタイム パッケージ v11.0" に依存しますこれは、もともと「Windows 8.0」を対象としたアプリ向けにリリースされたものです。「Microsoft Visual C++ ランタイム パッケージ v11.0」が「Windows 8.1」と互換性があるかどうかを確認するには、SDK の作成者に問い合わせるか、 http: //go.microsoft.com/fwlink/ ?LinkID=309181 を参照してください。

1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1803,5): エラー MSB3841: SDK "Bing Maps for C#、C++、または Visual Basic" は、 「Windows 8.1」と互換性のない SDK「Microsoft.VCLibs, version=11.0」。「Windows 8.1」をサポートするバージョンの SDK「Bing Maps for C#、C++、または Visual Basic」を参照してください。

WACK エラー

(Bing Maps SDK の SDKManifest.xml を変更した後) どうにか先に進むことができれば、アプリ パッケージを作成できます。アプリでWACKを実行すると、次のエラーが表示されます。

cppapp は、Microsoft Visual C++ ランタイム パッケージ (Microsoft.VCLibs.110.00) フレームワークに依存していますが、マニフェストにフレームワーク依存宣言がありません。


他の誰かがこれらの問題に直面しましたか。はいの場合、どのように対処しましたか?

4

2 に答える 2

2

Visual Studio 2013 Update 1 (詳細については、このブログ投稿を参照してください) は、これらの問題に対処しています。これには、上記のシナリオのブロックを解除するための適切な修正が含まれており、VS2013 を使用してビルドされている Windows 8.1 アプリが、Windows 8 としてマークされているか、Visual C++ 2012 を使用してビルドされている SDK を参照できるようになります。

于 2014-01-20T19:14:40.273 に答える
1

Windows 8.1 から bing マップを参照するには、Windows 8 用の SDK ではなく、 Windows 8.1 用の SDK を使用する必要があります。

herehereから、Windows 8.1 と互換性を持たせるために C++ パッケージを再コンパイルする必要があるため、まだ更新されておらず、ソース コードにアクセスできない場合、できることはあまりありません...:

C++ で作成され、Windows 8 用に作成された拡張 SDK は、Windows 8.1 と互換性がありません。

于 2013-10-22T22:19:44.343 に答える