イベントを公開する .Net アセンブリを作成しました。VB6 からのイベントは問題なく消費できます。アセンブリを PowerBuilder 開発者に配布したところ、ActiveX でない場合、COM オブジェクトからのイベントを処理できないと彼は言います。
ActiveX イベントは通常の COM イベントとは異なりますか? PowerBuilder がイベントを「見る」ことができるように、追加のインターフェイスを実装する必要がありますか?
前もって感謝します。
イベントを公開する .Net アセンブリを作成しました。VB6 からのイベントは問題なく消費できます。アセンブリを PowerBuilder 開発者に配布したところ、ActiveX でない場合、COM オブジェクトからのイベントを処理できないと彼は言います。
ActiveX イベントは通常の COM イベントとは異なりますか? PowerBuilder がイベントを「見る」ことができるように、追加のインターフェイスを実装する必要がありますか?
前もって感謝します。
両方のイベントは、接続ポイント(IConnectionPoint
および友人)を介して実装されます。ActiveXコントロールは通常、特定の追加の制約を使用して接続ポイントを実装します。
IDispatch::Invoke
実際のイベントを配信するために呼び出します。IProvideClassInfo2
。また、この情報を提供するための実装もあります。PowerBuilderまたは別のCOMイベントコンシューマが上記の1つ以上の項目に依存している場合、一部のイベントソースでのみ機能し、他のイベントソースでは機能しません。