0

WPF以外のベンダーライブラリを使用するWPFアプリがあります。私のアプリは、ライブラリが起動するイベントを受信しません。これはメッセージポンプが必要だからだと言われています。

別の(非常によく似た)質問では、受け入れられた回答はSystem.Windows.Threading.Dispatcher.Run()を使用することを提案しました。

ただし、その呼び出しを追加すると、ウィンドウがポップアップしません。アプリは効果的にバックグラウンドで処理されているため、タスクマネージャーでシャットダウンする必要があります。

私はここで本当に困惑していて、それを調査する方法さえわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

1

WPFを使用している場合は、既に1つありますが、Windows通知を取得する方法は他にありません。すべてのWPFアプリは、メインスレッドでのApplication.Run()の呼び出しから始まります。これは通常、よく隠されており、bin \ debug\app.g.csソースコードファイルで自動生成されます。Application.Run()は次にDispatcher.Run()を呼び出します

あなたのベンダーは正しいです、メッセージループなしで多くのCOMコンポーネントは緊張病になります。しかし、あなたはそれを持っているので、あなたは他の場所で問題を探す必要があります。スレッドでコンポーネントを使用しないでください。

于 2011-04-08T03:42:11.383 に答える