2017-04-20 9 views
0

私はWPFで作成したアプリケーションを持っています。現在のWPFでは、私はMicrosoft.Win32.SaveFileDialogファイルピッカーを使用して、ユーザーが保存するファイルの場所を選択できるようにしています。デスクトップアプリケーションコンバータを使用してUWPアプリケーションに変換されているWPFアプリケーションでファイルダイアログを開く方法

私は、このアプリケーションをWindows App互換アプリケーションに変換する途中で、Desktop App Converterアプリケーションを使用しています。 UWP変換されたアプリケーションでWin32ピッカーを使用すると、ハングアップして最終的にクラッシュするので、うまくいきません。

UWPと互換性のあるファイルピッカーWindows.Storage.Pickers.FileSavePickerがあります。これは、NugetパッケージUWPDesktopを使用して入手できます。

残念ながら、これは私に次の警告与えている - これはそう「Windows.Storage.Pickers.FileSavePicker」の唯一のUWPのアプリケーションで使用することができ

タイプではなく、デスクトップまたはセンテニアル

私にはっきりと分かりますので、最後に私の質問はです。デスクトップコンバーターのUWPアプリケーションにはどんなダイアログピッカーを使用するのですか?

  1. 両方のフレームワークと互換性があります、私は気づいていないのだファイルピッカーの第三のタイプのいくつかの種類があります -

    は、2つのオプションがあるように思えます。

  2. どのようなフレームワークがアクティブであるか(何とか)、適切なファイルピッカーを使用するために、アプリで何らかのチェックを使用します。

ありがとうございます!

+0

どのようなプロセスでアプリケーションを変換していますか?あなたは、アプリケーションを「純粋な」UWP(新しいAPI、新しいUIなどのみを使用して)にしようとしましたか、WPFアプリケーションをAppXとしてパッケージ化された完全信頼EXEとして保持していますか? –

+0

アプリは基本的に完成しているので、私はWPFのUIに固執しています。私はそれを行うためにWindowsストアからデスクトップアプリケーションコンバータを使用しています。それ以外はすべてダイアログが表示されます。もともと私はカスタムダイアログを作りましたが、現実的には、組み込みダイアログを使っても問題ありません。 – chris84948

答えて

0

私はMSの上にステファンにそれを送る計画で、そうでない場合は空のアプリでちょうど問題のダイアログを含むサンプルアプリを構築することになりました。

もちろん、すべてがうまく見えたので、もう少し試してみたところ、になってしまったことがわかりました。

ダイアログが実行される直前にいくつかの非同期コードが実行されていたため、アプリケーションが無期限にハングしてしまったようです。

私はこれが誰にも役立つとは思わない、ちょうどループを閉じたいと思った。

3

変換されたWPFアプリケーションでWin32ピッカーを引き続き使用できます。それがサポートされ、動作することが期待されます。

ここでクラッシュする理由を回答してください: Office 2016がインストールされている場合、最近Officeアップデートが導入され、変換されたアプリケーションのファイルピッカーダイアログがクラッシュするというバグがありました。このバグに対する修正は、サービス更新ですぐに外に出なければなりません。

実際にこのバグであることを確認するには、アプリのクラッシュレポートを見ることができ、モジュールgrooveex.dllにクラッシュがあるはずです。

おかげで、 ステファンウィック - Windowsの開発プラットフォーム

+0

私はちょうど確認しました。私はOffice 2013しか持っていません。同じ問題を示していますか?また、今日もう一度試してみると、アプリは完全にクラッシュすることはないようだ。永遠にタイムアウトすると、エクスプローラがクラッシュし、その時点でコンピュータを再起動する必要がある。これはこのバグの予想される動作ですか? – chris84948

+0

既知のバグは、Office 2016の特定のビルドに固有のものです.Explorerがクラッシュした場合、これは別の問題のように聞こえます。フォローアップできるように私に[swick at microsoft.com]に具体的に連絡してください。ありがとう! –

関連する問題