次の方法で共有


IPublisherFilter::Initialize メソッド (eventsys.h)

イベント メソッドをサブスクリプション オブジェクトのコレクションに関連付けます。

このメソッドは、下位互換性のためにのみサポートされています。 それ以外の場合は、 IMultiInterfacePublisherFilter インターフェイスのメソッドを使用する必要があります。

構文

HRESULT Initialize(
  [in] BSTR      methodName,
  [in] IDispatch *dispUserDefined
);

パラメーター

[in] methodName

パブリッシャー フィルターに関連付けられているイベント メソッドの名前。

[in] dispUserDefined

イベント システム オブジェクトの IEventSystem インターフェイスへのポインター、またはイベント クラス オブジェクトの IEventControl インターフェイスへのポインター。

戻り値

このメソッドは、標準の戻り値E_INVALIDARG、E_OUTOFMEMORY、E_UNEXPECTED、E_FAIL、および次の値を返すことができます。

リターン コード 説明
S_OK
パブリッシャー フィルターが正常に初期化されました。
EVENT_S_SOME_SUBSCRIBERS_FAILED
イベントは、サブスクライバーの一部 (すべてではない) を呼び出すことができました。
EVENT_E_ALL_SUBSCRIBERS_FAILED
イベントがサブスクライバーを呼び出すことができませんでした。
EVENT_S_NOSUBSCRIBERS
イベントは発行されましたが、サブスクライバーは存在しません。
EVENT_E_QUERYSYNTAX
クエリ文字列の評価中に構文エラーが発生しました。
EVENT_E_QUERYFIELD
クエリ文字列で無効なフィールド名が使用されました。
EVENT_E_INTERNALEXCEPTION
予期しない例外が発生しました。
EVENT_E_INTERNALERROR
予期しない内部エラーが検出されました。
EVENT_E_INVALID_PER_USER_SID
ユーザーごとのサブスクリプションの所有者 SID が存在しません。
EVENT_E_USER_EXCEPTION
ユーザーが指定したコンポーネントまたはサブスクライバーで例外が発生しました。
EVENT_E_TOO_MANY_METHODS
インターフェイスには、イベントを発生させるメソッドが多すぎます。
EVENT_E_MISSING_EVENTCLASS
サブスクリプションのイベント クラスが既に存在しない限り、サブスクリプションを格納することはできません。
EVENT_E_NOT_ALL_REMOVED
要求されたオブジェクトの一部を削除することはできません。
EVENT_E_COMPLUS_NOT_INSTALLED
この操作には COM+ が必要ですが、インストールされていません。

解説

パブリッシャー フィルターは、dispUserDefined で渡されたポインターを使用して、IEventSystem::Query または IEventControl::GetSubscriptions を呼び出してサブスクライバーの一覧を取得します。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー eventsys.h

関連項目

IMultiInterfacePublisherFilter

IPublisherFilter