IMsgServiceAdmin::GetProviderTableIMsgServiceAdmin::GetProviderTable

適用されます: Outlook 2013 |Outlook 2016Applies to: Outlook 2013 | Outlook 2016

プロバイダー テーブル、プロファイル内のサービス プロバイダーの一覧へのアクセスを提供します。Provides access to the provider table, a listing of the service providers in the profile.

HRESULT GetProviderTable(
  ULONG ulFlags,
  LPMAPITABLE FAR * lppTable
);

�p�����[�^�[Parameters

ulFlagsulFlags

[in]常に NULL を返します。[in] Always NULL.

lppTablelppTable

[out]プロバイダー テーブルへのポインターへのポインター。[out] A pointer to a pointer to the provider table.

�߂�lReturn value

S_OKS_OK

プロバイダー テーブルは正常に返されました。The provider table was successfully returned.

注釈Remarks

IMsgServiceAdmin::GetProviderTableメソッドでは、MAPI プロバイダーのテーブル、すべてのアドレス帳、メッセージ ・ ストア、およびプロファイルに現在インストールされているトランスポート プロバイダーの一覧が表示されるテーブルへのアクセスを提供します。The IMsgServiceAdmin::GetProviderTable method provides access to the MAPI provider table, a table that lists all the address book, message store, and transport providers currently installed in the profile.

IProviderAdmin::GetProviderTableメソッドによって返されるプロバイダー テーブルとは異なり、 IMsgServiceAdmin::GetProviderTableによって返されるプロバイダー テーブルが関連付けられている情報を表す追加の行を含めることはできません。プロファイルのサービスのプロバイダーの 1 つまたは複数のUnlike the provider table returned through the IProviderAdmin::GetProviderTable method, the provider table returned through IMsgServiceAdmin::GetProviderTable cannot include additional rows that represent information associated with one or more service providers in the profile.

削除されている、または使用中だが、削除対象としてマークされているプロバイダーは、プロバイダーの表には含まれません。Providers that have been deleted, or are in use but have been marked for deletion, are not included in the provider table. プロバイダー テーブルへの後の追加や、プロファイルからの削除が表に反映されていないことを意味します。Provider tables are static, meaning that subsequent additions to or deletions from the profile are not reflected in the table.

プロバイダー プロファイルがない場合は、 GetProviderTableは、0 個の行と S_OK の戻り値を持つテーブルを返します。If the profile has no providers, GetProviderTable returns a table with zero rows and the S_OK return value.

プロバイダー テーブル内の列の一覧は、プロバイダーのテーブルを参照してください。For a complete list of the columns in the provider table, see Provider Table.

呼び出し側への注意Notes to callers

トランスポートの順番でプロバイダーのテーブルの行を取得するには、次の手順に従います。To retrieve the rows of a provider table in transport order, use the following procedure:

  1. MAPI_TRANSPORT_PROVIDER とPR_RESOURCE_TYPE (PidTagResourceType) のプロパティに一致するプロパティの制限を適用するIMAPITable::Restrictメソッドを呼び出します。Call the IMAPITable::Restrict method to impose a property restriction that matches the PR_RESOURCE_TYPE (PidTagResourceType) property with MAPI_TRANSPORT_PROVIDER.

  2. PR_PROVIDER_ORDINAL (PidTagProviderOrdinal) の列でテーブルを並べ替えるにはIMAPITable::SortTableメソッドを呼び出します。Call the IMAPITable::SortTable method to sort the table by the PR_PROVIDER_ORDINAL (PidTagProviderOrdinal) column.

  3. テーブルの行を取得するIMAPITable::QueryRowsメソッドを呼び出します。Call the IMAPITable::QueryRows method to get the rows of the table.

代わりにこれらの呼び出しは、すべての適切なデータ構造体が渡されると、 HrQueryAllRows関数を 1 つの呼び出しを行うには。An alternative to these calls is to make a single call to the HrQueryAllRows function with all of the appropriate data structures passed in.

PR_SERVICE_UID (PidTagServiceUid) の列にそれぞれの行を取得する場合は、 IMsgServiceAdmin::MsgServiceTransportOrderへの呼び出しのトランスポートの順番を設定するのには、このMAPIUIDの構造体の配列を使用できます。If you retrieve the PR_SERVICE_UID (PidTagServiceUid) columns in each of the rows, you can use this array of MAPIUID structures to set the transport order in a call to IMsgServiceAdmin::MsgServiceTransportOrder.

_UlFlags_パラメーターに MAPI_UNICODE フラグを設定は、次を行います。Setting the MAPI_UNICODE flag in the ulFlags parameter does the following:

  • IMAPITable::QueryColumnsメソッドによって、プロバイダーのテーブルの最初のアクティブな列に返されるデータの unicode 文字列の種類を設定します。Sets the string type to Unicode for data returned for the initial active columns of the provider table by the IMAPITable::QueryColumns method. プロバイダー テーブルの最初のアクティブな列は、これらの列がテーブルの呼び出しをIMAPITable::SetColumnsメソッドに含まれているプロバイダーの前に、 QueryColumnsメソッドを返します。The initial active columns for a provider table are those columns the QueryColumns method returns before the provider that contains the table calls the IMAPITable::SetColumns method.

  • スプーラーによって、プロバイダーのテーブルの最初のアクティブな行に返されるデータの unicode 文字列の種類を設定します。Sets the string type to Unicode for data returned for the initial active rows of the provider table by QueryRows. プロバイダーのテーブルの最初のアクティブな行は、これらの行をテーブル呼び出しSetColumnsを含むプロバイダーをする前にスプーラーを返しますです。The initial active rows for a provider table are those rows QueryRows returns before the provider that contains the table calls SetColumns.

  • プロバイダー テーブルを含んでいるクライアントは、 IMAPITable::SortTableメソッドを呼び出す前に、 IMAPITable::QuerySortOrderメソッドによって返される並べ替え順序のプロパティの種類を制御します。Controls the property types of the sort order returned by the IMAPITable::QuerySortOrder method before the client that contains the provider table calls the IMAPITable::SortTable method.

関連項目See also

IMsgServiceAdmin::GetMsgServiceTableIMsgServiceAdmin::GetMsgServiceTable

IMsgServiceAdmin::MsgServiceTransportOrderIMsgServiceAdmin::MsgServiceTransportOrder

IProviderAdmin::GetProviderTableIProviderAdmin::GetProviderTable

IMsgServiceAdmin : IUnknownIMsgServiceAdmin : IUnknown