実行時に、ファイルに格納されているResourceDictionaryをロードしようとしています。私はそれを取得したようUWP/C++でResourceDictionaryをコードバックにロード
auto rd = ref new ResourceDictionary();
rd->Source = ref new Uri("ms-appx:///!UWP/Styles/UWPDictionary.xaml");
Application::Current->Resources->MergedDictionaries->Append(rd);
は、このコードはApp.xamlに右後InitializeComponent()
を実行する必要があります:C#ではそれは単に
ResourceDictionary resourceDictionary = new ResourceDictionary();
resourceDictionary.Source = new Uri("ms-appx:///!UWP/Styles/UWPDictionary.xaml", UriKind.Relative);
Application.Current.Resources.MergedDictionaries.Add(resourceDictionary);
が、同じコードとして(C++/CXに)動作していないに見えます.cppのコンストラクタ。ソースが正しく設定されている(URIを作成してもエラーは発生しません)。 0x40080201:wp_UWP.exeに0x7464A6F2(KernelBase.dll)で投げ
例外:エラー(:0x8000ffffが返され、0x00000016、0x0D30F274パラメータ)を発信WinRTの
最終ライン
MergedDictionaries->Append(rd)
は、例外がスローされます。 wp_UWP.exeの0x7464A6F2でスローされた例外:Microsoft C++例外:プラットフォーム:: COMException ^がメモリ位置0x0D30F714にあります。 HRESULT:0x8000ffffが返さ致命的な障害 WinRTの情報:致命的なエラーwp_UWP.exeで0x0C9E571A(Windows.UI.Xaml.dll)で未処理の例外:0xC000027B:アプリケーション内部例外が発生した(パラメータ:0x00F1CA10、0x00000002)。
このコードを修正するにはどうすればよいですか?私はなぜそれが "致命的な失敗"例外をスローするのか分からない。
OnLaunched()といくつかの問題を抱えているApp.xamlの問題を解決したことが判明しました。ありがとうございました :) –