ABのマーシャリング

ActiveBasicのバグと思われる不具合を発見された方は、こちらから知らせていただけると助かります。
返信する
メッセージ
作成者
TK
記事: 2
登録日時: 2006年7月07日(金) 23:38

ABのマーシャリング

#1 投稿記事 by TK »

EXEサーバーにクライアント(AB5)を接続してイベントを受け取るプログラムを書いています。
具体的に言うとWEBブラウザから現在のURLから他のURLへジャンプした時にURLを記録したいのです。
方法はエクスプローラのIWebBrowserへイベントハンドラを登録しておけばコールバックされます。
このコールバックされる側(クライアント)をABで実装しようとしています。

問題は、コールバックされるとクライアントのInvoke関数が呼び出されますが、どうやらブラウザからURLが渡ってきていないようです。

このinvoke関数に渡される第5パラメータdispparamsのrgvarg フィールド には、invokeからDISPIDで目的の関数を呼び出す際のVARIANT型のパラメータが入っています。
そのURLパラメーターに該当する部分を見ると、VARIANT型のポインタになっており、さらにそのポインタの中身はBSTRでした。
しかし、このBSTRがNULLなので渡って来ていないと判断しました。

これはABのマーシャリングがうまく行えていないからでしょうか?
返信する