2016-11-02 26 views
0

私のPCにVS2015コミュニティをインストールしようとしています。私は、アップデートをインストール、再インストールしようとしましたが、何かが変わっVS2015インストールでエラーが発生し、Xamarin UWPが動作しない

Windows 10 SDK(10.0.10240) The installer failed. Fatal error during installation. Error code: -2147023293

:私は最後にすべてをインストールすると は、インストーラは、私には、次のメッセージを表示します。私が見ることができる唯一の結果は、新しいXamarinソリューションを作成したときに、ローカルマシンをターゲットとして使用してUWPプロジェクトを実行すると開始されますが、この例外メッセージが取得されることです。

exception

私はモバイルエミュレータからアプリケーションを実行する場合、それは問題なく起動します。用

  • Windowsデスクトップの拡張機能のためのUWP
  • Windows Mobileの機能拡張:

    どこかは、私は、私はプロジェクトのために次の参照を追加してください必要があることを読んだ(申し訳ありませんが、私は、ソースを忘れてしまいました) UWP

しかし、私は最初のものだけを持っています。おそらくそれはインストールの問題に関連しているでしょうか?

私はXamarinとUWPの新機能ですが、UWPはモバイルデバイスとデスクトップの両方に実行する必要があります。おそらくこれに関連するインストールの問題を解決しようとすることができますか?

最後に、私はインストールを修正するために何を試すことができ、xamarin UWPプロジェクトをローカルマシンで正しく実行できるようにしますか?

+0

あなたはVSインストールではなく、Xamarinであるべきだと思います。 VSが正しくインストールされている場合は、Xamarinはokです。あなたのPCはWindows 10ですか? https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk –

+0

私はすでに試してみました。 SDKが既にインストールされていると私には言います。私がそれをアンインストールしてからこれをインストールしても何も変わりません。 – Jepessen

答えて

1

モバイルエミュレータからアプリケーションを実行すると問題なく起動します。

エラーメッセージによると、あなたのプロジェクトでStatusBarが使用されているようです。

StatusBarを使用している間、これはユニバーサルAPIではないことに注意してください。このクラスはモバイルデバイスでのみ使用できます。ステータスバーはモバイルデバイスにのみ存在するため、デスクトップ、テーブル、またはIoTデバイスにはそのようなものはありません。したがって、Local Machineでこのクラスを使用するとエラーが発生しますが、Mobile Emulatorでは問題なく動作します。

要件セクションのStatusBarを参照してください。 StatusBarを使用した場合

通常、我々は次のようなランタイムAPIをチェックして、それを使用します。

Windows.UI.ViewManagement.StatusBar statusBar = null; 
if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.UI.ViewManagement.StatusBar")) 
{ 
    statusBar = Windows.UI.ViewManagement.StatusBar.GetForCurrentView(); 
} 

if (statusBar != null) 
{ 
    //TODO 
} 

をローカルマシン上で、何StatusBarがないよう、ApiInformation.IsTypePresent方法はfalseを返します。これにより、エラーを回避できます。詳細はWrite adaptive codeをご覧ください。

しかし、私は最初のものだけを持っていますが、2番目のものはありません。おそらくそれはインストールの問題に関連しているでしょうか?

UWPのWindows Mobile拡張機能が見つからない理由はわかりません。しかし、StatusBarを使用し、モバイルエミュレータでプロジェクトをビルドして実行できる場合は、UWP用のWindows Mobile Extensionsを参照している必要があります。この拡張機能がなければ、StatusBarは使用できず、ビルドに失敗します。

あなたがインストールしたSDKに応じて、リファレンスマネージャで次の拡張子を見つけることができます(右プロジェクトに「参照」をクリックしてを「参照の追加」「ユニバーサル・Windowsの」を選択→「内線番号」)。
enter image description here

は、私はあなたがデスクトップの拡張機能とモバイル拡張機能の両方を持っているかどうかを確認するには、Visual Studioで新しいブランクのApp(ユニバーサル・Windowsの場合)プロジェクトを作成することをお勧めしたいです。新しいブランクアプリケーションでまだ問題がある場合は、Visual Studio Uninstallerを使用してVisual Studioを完全にアンインストールし、コントロールパネルでSDKなどの関連するものをすべてアンインストールしていることを確認することをおすすめします。次に、Visual Studioを再インストールして、動作するかどうかを調べることができます。

+0

この場合、デスクトップでも動作するXamarinプロジェクトをビルドするには、別のUWPプロジェクトを作成して欠落しているステータスバー(と私が想定している他のもの)を管理する必要がありますか?また、VSを削除するためにVisual Studio Uninstallerを使用しましたが、使用後にインストール時に同じエラーが発生しました。そしてこの場合でさえ、私はUWP用のWindows Desktop Extensionを持っていますが、モバイル用のものはありません。 – Jepessen

+0

@Jepessen新しいブランクアプリケーション(Universal Windows)プロジェクトで試しましたか?同じ問題がありますか?あなたが使っているXamarinプロジェクトは何ですか? XamarinプロジェクトにUWPプロジェクトがある場合、別のプロジェクトを追加する必要はありません。たとえば、[Map sample](https://developer.xamarin.com/samples/xamarin-forms/CustomRenderers/Map/)を使用すると、UWPプロジェクトは1つしかなく、デスクトップとモバイルの両方のデバイスで実行できます。 –

+0

通常のUWPアプリでは問題はなく、実行されます。問題は、新しい空のxamarinアプリケーション(共有)を作成し、UWPプロジェクト(コード変更なし)を実行しようとするときです。 – Jepessen

関連する問題