Partager via


Interface ICopyHookA (shlobj.h)

Expose une méthode qui crée un gestionnaire de hooks de copie . Un gestionnaire de hooks de copie est une extension Shell qui détermine si un dossier shell ou un objet d’imprimante peut être déplacé, copié, renommé ou supprimé. L’interpréteur de commandes appelle la méthode ICopyHookA ::CopyCallback avant d’effectuer l’une de ces opérations.

Héritage

L’interface ICopyHookA hérite de l’interface IUnknown.

Méthode

L’interface ICopyHookA a ces méthodes.

 
ICopyHookA ::CopyCallback

Détermine si l’interpréteur de commandes est autorisé à déplacer, copier, supprimer ou renommer un dossier ou un objet d’imprimante. (ANSI)

Remarques

Le gestionnaire de raccordement de copie, qui est un serveur ole in-process (dll), n’effectue pas la tâche elle-même, mais il approuve ou désapprouve l’action. Si l’interpréteur de commandes reçoit l’approbation du gestionnaire de raccordement de copie, il effectue l’opération du système de fichiers. Les gestionnaires de raccordement de copie ne sont pas informés de la réussite d’une opération. Ils ne peuvent donc pas surveiller les actions effectuées sur les objets de dossier, sauf si FindFirstChangeNotification est utilisé.

Un objet dossier peut avoir plusieurs gestionnaires de hooks de copie. Par exemple, même si l’interpréteur de commandes dispose déjà d’un gestionnaire de crochets de copie inscrit pour un objet dossier particulier, vous pouvez toujours inscrire l’un de vos propres. Si deux gestionnaires de hooks de copie ou plus sont inscrits pour un objet, l’interpréteur de commandes appelle simplement chacun d’eux avant d’effectuer l’une des opérations de système de fichiers spécifiées.

L’interpréteur de commandes initialise ICopyHookA directement, sans utiliser d’abord l’interface IShellExtInit .

CopyCallback retourne une valeur int qui indique si l’interpréteur de commandes doit effectuer l’opération. L’interpréteur de commandes appelle chaque gestionnaire de crochet de copie inscrit pour un objet de dossier jusqu’à ce que tous les gestionnaires aient été appelés ou jusqu’à ce que l’un d’eux ait retourné une valeur autre que IDYES. Le gestionnaire retourne IDYES pour spécifier que l’opération doit être effectuée, ou IDNO ou IDCANCEL pour spécifier que l’opération doit être interrompue.

Implémentez un gestionnaire de raccordement de copie lorsque vous souhaitez pouvoir contrôler quand ou si ces opérations de système de fichiers sont effectuées sur un objet donné. Vous pouvez utiliser un gestionnaire de hooks de copie sur des dossiers partagés, par exemple.

Vous n’appelez pas directement cette extension Shell. copyCallback est appelée par l’interpréteur de commandes avant de déplacer, copier, supprimer ou renommer un objet de dossier Shell.

Note

L’en-tête shlobj.h définit ICopyHook en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
d’en-tête shlobj.h