次の方法で共有


ISyncMgrControl::EnableHandler メソッド (syncmgr.h)

ハンドラーを有効または無効にします。

構文

HRESULT EnableHandler(
  [in] BOOL                  fEnable,
  [in] LPCWSTR               pszHandlerID,
  [in] HWND                  hwndOwner,
  [in] SYNCMGR_CONTROL_FLAGS nControlFlags
);

パラメーター

[in] fEnable

種類: BOOL

有効にする場合は TRUE無効にする場合は FALSE

[in] pszHandlerID

種類: LPCWSTR

ハンドラーの一意の ID を含むバッファーへのポインター。 この文字列は、終端の null 文字を含む最大長MAX_SYNCMGR_IDです。

[in] hwndOwner

型: HWND

ハンドラーが必要な UI を表示するために使用できるウィンドウへのハンドル。 この値は NULL にすることができます

[in] nControlFlags

種類: SYNCMGR_CONTROL_FLAGS

ハンドラーの有効化または無効化を同期的または非同期的に実行するかどうかを指定する、 SYNCMGR_CONTROL_FLAGS 列挙の値。

戻り値

種類: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

アクティブなハンドラーが Sync Center フォルダーに表示されます。非アクティブなハンドラーが [同期セットアップ] フォルダーに表示されます。

指定したハンドラーが GetCapabilities メソッドから返されたマスクでSYNCMGR_HCM_QUERY_BEFORE_ENABLEまたはSYNCMGR_HCM_QUERY_BEFORE_DISABLEを返した場合、ハンドラーが有効または無効になる前に要求された確認ダイアログがユーザーに表示されます。 クエリ UI が要求されていない場合、またはユーザーが操作を確認すると、ハンドラーの Enable メソッドが呼び出されます。

SYNCMGR_CF_WAITが nControlFlags パラメーターに設定されている場合、EnableHandler は同期センターがこの通知を処理するまで戻りません。

次の例は、ハンドラーのプロシージャによる ISyncMgrControl::EnableHandler の使用方法を示しています。

void MiscProc(...)
{
    ...

    // Get the Sync Center control object.
    ISyncMgrControl *pControl = NULL;
    
    hr = CoCreateInstance(CLSID_SyncMgrControl, 
                          CLSCTX_SERVER, 
                          IID_PPV_ARGS(&pControl));
    if (SUCCEEDED(hr))
    {
        // Tell Sync Center to enable our handler.
        hr = pControl->EnableHandler(TRUE, 
                                     s_szMySyncHandlerID, 
                                     hwnd,
                                     SYNCMGR_CF_NOWAIT);
        pControl->Release();
    }

    ...

}

要件

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