IMsgServiceAdmin::ConfigureMsgService
適用対象: Outlook 2013 | Outlook 2016
メッセージ サービスを再構成します。
HRESULT ConfigureMsgService(
LPMAPIUID lpUID,
ULONG_PTR ulUIParam,
ULONG ulFlags,
ULONG cValues,
LPSPropValue lpProps
);
パラメーター
lpUID
[in]構成するメッセージ サービスの一意識別子を含む MAPIUID 構造体へのポインター。
ulUIParam
[in]構成プロパティ シートの親ウィンドウへのハンドル。
ulFlags
[in]プロパティ シートの表示を制御するフラグのビットマスク。 次のフラグを設定できます。
MAPI_UNICODE
渡された文字列は Unicode 形式です。 MAPI_UNICODE フラグが設定されていない場合、文字列は ANSI 形式です。
MSG_SERVICE_UI_READ_ONLY
メッセージ サービスは構成プロパティ シートを表示する必要がありますが、ユーザーがそれを変更することはできません。 ほとんどのメッセージ サービスでは、このフラグは無視されます。
SERVICE_UI_ALLOWED
メッセージ サービスは、サービスが完全に構成されていない場合にのみ、その構成プロパティ シートを表示する必要があります。
SERVICE_UI_ALWAYS
メッセージ サービスは、常にその構成プロパティ シートを表示する必要があります。 SERVICE_UI_ALWAYSが設定されていない場合でも、SERVICE_UI_ALLOWEDが設定されていて、 lpProps パラメーターのプロパティ値配列から有効な構成情報を使用できない場合は、構成プロパティ シートを表示できます。 プロパティ シートを表示するには、SERVICE_UI_ALLOWEDまたはSERVICE_UI_ALWAYSを設定する必要があります。
cValues
[in]lpProps が指す SPropValue 構造体のプロパティ値の数。
lpProps
[in]プロパティ シートに表示するプロパティを記述するプロパティ値の配列へのポインター。 ユーザー インターフェイスなしでメッセージ サービスを構成する必要がある場合は、 lpProps パラメーターを NULL にしないでください。
戻り値
S_OK
メッセージ サービスが正常に構成されました。
MAPI_E_EXTENDED_ERROR
メッセージ サービスに固有のエラー。 エラーを記述する MAPIERROR 構造体を取得するには、クライアント アプリケーションで IMsgServiceAdmin::GetLastError メソッドを呼び出す必要があります。
MAPI_E_NOT_FOUND
lpUID が指す MAPIUID は、既存のメッセージ サービスの MAPIUID と一致しません。
MAPI_E_NOT_INITIALIZED
メッセージ サービスにエントリ ポイント関数がありません。
MAPI_E_USER_CANCEL
ユーザーは通常、プロパティ シートの [キャンセル] ボタンをクリックして操作を 取り消 しました。
注釈
IMsgServiceAdmin::ConfigureMsgService メソッドを使用すると、構成プロパティ シートの有無にかかわらず、メッセージ サービスを構成できます。
プロパティ シートの表示なしで構成を許可するために、メッセージ サービスは通常、必要なすべてのプロパティとオプションのプロパティとその値の定数を含むヘッダー ファイルを準備します。
呼び出し側への注意
構成するメッセージ サービスの MAPIUID 構造体を取得するには、メッセージ サービス テーブルのメッセージ サービスの行から PR_SERVICE_UID (PidTagServiceUid) 列を取得します。 詳細については、 IMsgServiceAdmin::CreateMsgService メソッドで説明されている手順を参照してください。
設定するプロパティ値に関する詳細な情報がある場合にのみ、ユーザーにプロパティ シートを表示せずにメッセージ サービスを構成できます。 プロパティ シートを表示せずにメッセージ サービスを構成する場合は、 lpProps パラメーターに有効なプロパティ値を渡し、MSG_SERVICE_UI_READ_ONLY、SERVICE_UI_ALLOWED、またはSERVICE_UI_ALWAYSフラグを設定しないでください。
プロパティ シートを使用してユーザーから構成情報のすべてまたは一部を受け取る場合は、 ulFlags でSERVICE_UI_ALLOWEDを設定します。 既存のプロパティ情報のみを使用して既定の設定を確立し、ユーザーが設定を変更できる場合は、 ulFlags でSERVICE_UI_ALWAYSを設定します。
MFCMAPI リファレンス
MFCMAPI のサンプル コードについては、次の表を参照してください。
ファイル | 関数 | コメント |
---|---|---|
MAPIProfileFunctions.cpp |
HrAddServiceToProfile |
MFCMAPI では 、IMsgServiceAdmin::ConfigureMsgService メソッドを使用して、プロファイルに追加されたサービスを構成します。 |