Établissement de la communication avec les composants logiciels enfichables de configuration

Une fois que votre extension de composant logiciel enfichable d’attachement s’est ajoutée au nœud services, elle doit établir la communication avec le composant logiciel enfichable Configuration de la sécurité. Cela est nécessaire, car l’extension du composant logiciel enfichable d’attachement obtient ses données, ainsi que toutes les modifications apportées par l’utilisateur, à partir du composant logiciel enfichable Configuration de la sécurité. Cela peut être effectué comme décrit dans la procédure suivante.

Pour établir la communication avec les composants logiciels enfichables de configuration de la sécurité

  1. Obtenez le nom du fichier de configuration à l’aide du _ _ format de presse-papiers CCF SCESVC joint, qui retourne le nom du fichier de configuration en tant que PWSTR.

    Si la pièce jointe est insérée sous un nœud de type de configuration, la pièce jointe doit connaître la configuration. (Il communique ces informations aux composants logiciels enfichables de configuration de sécurité lors de l’initialisation de l’interface.) Dans ce cas, utilisez le code suivant.

    PWSTR * TemplateName = ExtractTemplateFromDataObject(lpDataObject);
    
  2. Configurez le contexte avec les composants logiciels enfichables de configuration de la sécurité. Une fois le nom de la configuration connu, ou si le nœud de service est un nœud d’analyse, l’extension du composant logiciel enfichable d’attachement doit appeler ISceSvcAttachmentData :: Initialize pour configurer le contexte, comme illustré dans l’exemple suivant.

    LPSCESVCATTACHMENTPERSISTINFO pSceInfo;
    
        HRESULT hr = ((LPSCESVCATTACHMENTPERSISTINFO)this)->
                QueryInterface(IID_ISceSvcAttachmentPersistInfo,
                (void**)&pSceInfo);
    
        if ( SUCCEEDED(hr) )
        {
    
            hr = m_pSceData->Initialize(strServiceName, TemplateName,
                    pSceInfo, &ThisHandle);
            // Continue processing (not shown).
        }
    

Notes

Lorsque vous avez terminé d’utiliser le handle retourné par ISceSvcAttachmentData :: Initialize, fermez le handle en appelant la fonction ISceSvcAttachmentData :: CloseHandle . Cette opération est généralement effectuée lorsque l’utilisateur ferme la console MMC.