win32コンソールバッファに加えられたすべての変更を、発生時に確実にキャプチャする方法はありますか?アイデアは、telnet / sshサーバー用に、テキストモードアプリの画面更新をANSIエスケープシーケンスに変換することです。カーソルの動き、色、ウィンドウのタイトルなどをキャプチャする必要があります。可能であれば、マウスのクリックもキャプチャします。
これまでに使用した唯一の手法は、基本的にコンソールバッファの内容のスナップショットを頻繁に取得し、以前のスナップショットと比較することです。変更がある場合は、何が変更されたかを把握し、ANSIエスケープシーケンスを生成します。
この種の機能は機能しますが、送信されるデータの量を最小限に抑えるための優れた差分アルゴリズムは複雑になります。画面バッファが非常に速く更新され、一部の更新がまったく送信されない場合があります。これはショーストッパーです。100%確実にキャプチャされたすべてのデータが必要です。