ANSI C Windows 7環境でハードウェアと仮想シリアルポートの組み合わせを使用しています。このプロジェクトでは、2つのアプリケーションがあります。最初のアプリケーションが開発され、ハードウェアCOMポートと仮想COMポートの両方に接続されます。 2番目はレガシーアプリケーションです(既に開発済みで変更できません)。仮想NULLモデムを介して同じ仮想COMポートにのみ接続されます。Windows 7でのANSI C - シリアルイベント(RS232)のプログラムによる生成
最初のアプリケーションでは、COMイベントハンドラを使用して、ハードウェアCOMポートに接続されたシリアルメッセージジェネレータから生成されたメッセージを受信して処理することができます。しかし、仮想COMポートはCOMイベントを生成しないため、タイミングループを使用して、仮想ポートのシミュレートされた入出力キューを定期的にチェックすることに限定されています。これは、最初のアプリケーションでCOMトラフィックを制御する場合は問題ありませんが、2番目のアプリケーションでは、受信したシリアルトラフィックを処理するためにCOMイベントを確認する必要があります。
COMイベントを予期しているレガシーアプリケーションに表示されるように、あるアプリケーションでWindows COM(RS232)イベントをプログラムで生成する方法はありますか?イベントによって
は、私のような、典型的なcomcallbackによって認識されるものを参照しています:これが機能するかどう LWRS_RXCHAR、LWRS_RXFLAG、LWRS_TXEMPTY、LWRS_CTSなど
より良い仮想ヌルモデムドライバを購入してください。 –
ハンス、何か提案がありますか?com0comとVSPEを見ました。 com0comはAPIを提供せず、VSPEは無事に見える – ryyker