非同期ソケット

さて同期ソケット通信(TCP)はだいたいできたのですが、非同期になるとウィンドウメッセージを使わないといけません。
gnakoはイベント登録があるので問題ないのですが、vnakoは勝手にメッセージループを使えないのです。
VisualBasicでの手法として、ImageコントロールのWM_MOUSEMOVEのイベントで、マウスのXとYと、押されているキーからWparamとLparamを取得できるので代替できるようですが、vnakoのイメージ部品のマウス移動した時イベントでは押されたキーが取得できないようです。
何か代わりになる物はあるでしょうか?
でも、どちらにしてもvnakoとgnakoで別々の定義を作らないといけないんですよねぇ。
!を使って、ディレクティブみたいなのが出来ないものでしょうか。