Méthode ISyncMgrControl ::ActivateHandler (syncmgr.h)
Active ou désactive un gestionnaire.
Syntaxe
HRESULT ActivateHandler(
[in] BOOL fActivate,
[in] LPCWSTR pszHandlerID,
[in] HWND hwndOwner,
[in] SYNCMGR_CONTROL_FLAGS nControlFlags
);
Paramètres
[in] fActivate
Type : BOOL
TRUE à activer ; FALSE à désactiver.
[in] pszHandlerID
Type : LPCWSTR
Pointeur vers une mémoire tampon contenant l’ID unique du gestionnaire. Cette chaîne est de longueur maximale MAX_SYNCMGR_ID y compris le caractère null de fin.
[in] hwndOwner
Type : HWND
Handle d’une fenêtre qui peut être utilisée par le gestionnaire pour afficher toute interface utilisateur nécessaire. Cette valeur peut être NULL.
[in] nControlFlags
Type : SYNCMGR_CONTROL_FLAGS
Valeur du SYNCMGR_CONTROL_FLAGS énumération spécifiant si l’activation ou la désactivation du gestionnaire doit être effectuée de manière synchrone ou asynchrone.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Un gestionnaire actif s’affiche dans le dossier Centre de synchronisation ; un gestionnaire inactif s’affiche dans le dossier Installation de synchronisation.
Si le gestionnaire spécifié retourne SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE ou SYNCMGR_HCM_QUERY_BEFORE_DEACTIVATE dans le masque retourné par la méthode GetCapabilities , l’opération de requête est demandée avant l’activation ou la désactivation du gestionnaire. Si aucune interface utilisateur de requête n’est demandée ou une fois que l’utilisateur confirme l’opération, la méthode Activate du gestionnaire est appelée.
Si SYNCMGR_CF_WAIT est défini dans le paramètre nControlFlags , ActivateHandler ne retourne pas tant que le Centre de synchronisation n’a pas traité cette notification.
Exemples
L’exemple suivant montre l’utilisation d’ISyncMgrControl ::ActivateHandler par la procédure d’un gestionnaire.
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 activate our handler.
hr = pControl->ActivateHandler(TRUE,
s_szMySyncHandlerID,
hwndOwner,
SYNCMGR_CF_NOWAIT);
pControl->Release();
}
...
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | syncmgr.h |