Share via


Interfaccia ICopyHookW (shlobj.h)

Espone un metodo che crea un gestore hook di copia. Un gestore hook di copia è un'estensione shell che determina se una cartella shell o un oggetto stampante può essere spostato, copiato, rinominato o eliminato. Shell chiama il metodo ICopyHookW::CopyCallback prima di eseguire una di queste operazioni.

Ereditarietà

L'interfaccia ICopyHookW eredita dall'interfaccia IUnknown.

Metodi

L'interfaccia ICopyHookW include questi metodi.

 
ICopyHookW::CopyCallback

Determina se la shell potrà spostare, copiare, eliminare o rinominare una cartella o un oggetto stampante. (Unicode)

Commenti

Il gestore hook di copia, ovvero un server in-process OLE (una dll), non esegue l'attività stessa, ma approva o non approva l'azione. Se Shell riceve l'approvazione dal gestore hook di copia, esegue l'operazione del file system. I gestori hook di copia non vengono informati sull'esito positivo di un'operazione, pertanto non possono monitorare le azioni eseguite sugli oggetti cartella a meno che non venga usato FindFirstChangeNotification .

Un oggetto cartella può avere più gestori hook di copia. Ad esempio, anche se shell dispone già di un gestore hook di copia registrato per un determinato oggetto cartella, è comunque possibile registrarne uno personalizzato. Se due o più gestori hook di copia vengono registrati per un oggetto, shell li chiama semplicemente prima di eseguire una delle operazioni del file system specificate.

Shell inizializza direttamente ICopyHookA , senza usare prima l'interfaccia IShellExtInit .

CopyCallback restituisce un valore int che indica se shell deve eseguire l'operazione. Shell chiamerà ogni gestore hook di copia registrato per un oggetto cartella fino a quando non vengono chiamati tutti i gestori o fino a quando uno di essi non ha restituito un valore diverso da IDYES. Il gestore restituisce IDYES per specificare che l'operazione deve essere eseguita oppure IDNO o IDCANCEL per specificare che l'operazione deve essere sospesa.

Implementare un gestore hook di copia quando si vuole essere in grado di controllare quando, o se, queste operazioni del file system vengono eseguite su un determinato oggetto. È possibile usare un gestore hook di copia nelle cartelle condivise, ad esempio.

Questa estensione shell non viene chiamata direttamente. CopyCallback viene chiamato dalla shell prima di spostare, copiare, eliminare o rinominare un oggetto cartella shell.

Nota

L'intestazione shlobj.h definisce ICopyHook come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Intestazione shlobj.h