シナリオ:
サードパーティの C++ SDK を DLL としてラップして、組織内の他の開発者がこの機能を独自のアプリ (.net、delphi など) に簡単に統合できるようにする作業に取り組んでいます。
基になるシステムは、Windows メッセージを送信して、システムで発生するイベントを通知します。これらのイベントは、システムの状態と次に何ができるかを示す可能性があるため、対処する必要があります。
質問:
私たちが採用しているアプローチ (つまり、サードパーティ SDK をラップする DLL) のコンテキスト内でこれらのメッセージを処理する最善の方法は何でしょうか? 頭に浮かぶいくつかのアイデア:
- DLL を使用するアプリケーションでメッセージをトラップし、処理のために関数呼び出しを介して DLL に戻します。呼び出し元のアプリケーションがこれらのメッセージをトラップすることは可能ですか?
- 基になるシステムからのこれらのメッセージを処理し、独自のカスタム メッセージをバブルアップするメッセージ ポンプを実装する DLL 内からスレッドを生成しますか?
SDK 用に指定されたすべてのサンプル コードは、メッセージ ポンプを実装し、アプリケーションのコンテキスト内でメッセージを処理する単一の Win32 アプリを使用します。
ネイティブの Win32 を使用して Windows 開発を行ってから何年も経ちましたが、アドバイスをいただければ幸いです。