Delphi IClientTableインターフェイス(MIDAS.DLL ??)を使用してローカルファイルデータベース(.CDSファイル)を維持するC++アプリケーションがあります。C ++アプリケーション内では、IClientTableはCOleDispatchDriverMFCインターフェイス/オブジェクトです。
私は個人的にこれから完全に離れてSQLiteを使用したいと思っていますが、残念ながら私は現在これを行う立場にありません。
このCOMオーバーヘッドのオープンソースの代替品があるかどうか誰かに教えてもらえますか?単純なDLL、ライブラリ、またはソースファイルのセットをプログラムにコンパイルして、COMインターフェイスを削除したいのですが、これは非常に悲惨なことです。
なぜ私がCOMインターフェースを削除したいのかを本当に知りたいのであれば、それは奇妙なことですが、私たちは10年間問題なく使用してきました。最近、Windows XP Embeddedを使用している顧客を見つけました。何らかの理由で、IClientTable COMディスパッチインターフェイスを使用すると、Windows WM_QUERYENDSESSIONメッセージが吸収されるか、アプリケーションに到達しなくなります。IClientTableインターフェイスの使用を停止すると、WM_QUERYENDSESSIONメッセージが表示されます。
つまり、IClientTable COMディスパッチインターフェイスは、Windowsによるログオフ/シャットダウンの許可を停止しているように見えます。