Metodo ICopyHookW::CopyCallback (shlobj.h)
Determina se shell sarà consentito spostare, copiare, eliminare o rinominare una cartella o un oggetto stampante.
Sintassi
UINT CopyCallback(
HWND hwnd,
UINT wFunc,
UINT wFlags,
PCWSTR pszSrcFile,
DWORD dwSrcAttribs,
PCWSTR pszDestFile,
DWORD dwDestAttribs
);
Parametri
hwnd
Handle alla finestra che il gestore dell'hook di copia deve usare come elemento padre per qualsiasi elemento dell'interfaccia utente che il gestore potrebbe dover visualizzare. Se FOF_SILENT è specificato in wFunc, il metodo deve ignorare questo parametro.
wFunc
Operazione da eseguire. Questo parametro può essere uno dei valori elencati nel membro wFunc della struttura SHFILEOPSTRUCT .
wFlags
Flag che controllano l'operazione. Questo parametro può essere uno o più dei valori elencati nel membro fFlags della struttura SHFILEOPSTRUCT .
Per i hook di copia della stampante, questo valore è uno dei valori seguenti definiti in Shellapi.h.
Valore | Descrizione |
---|---|
PO_DELETE | Viene eliminata una stampante. pszSrcFile punta al percorso completo della stampante specificata. |
PO_RENAME | Viene rinominata una stampante. Il parametro pszSrcFile punta al nuovo nome della stampante. Il parametro pszDestFile punta al nome precedente. |
PO_PORTCHANGE | Non supportato. Non usare. |
PO_REN_PORT | Non supportato. Non usare. |
pszSrcFile
Puntatore a una stringa contenente il nome della cartella di origine.
dwSrcAttribs
Attributi della cartella di origine. Questo parametro può essere una combinazione di uno dei flag dell'attributo file (FILE_ATTRIBUTE_*) definiti nei file di intestazione. Vedere Costanti dell'attributo file.
pszDestFile
Puntatore a una stringa contenente il nome della cartella di destinazione.
dwDestAttribs
Attributi della cartella di destinazione. Questo parametro può essere una combinazione di uno dei flag dell'attributo file (FILE_ATTRIBUTE_*) definiti nei file di intestazione. Vedere Costanti dell'attributo file.
Valore restituito
Restituisce un valore integer che indica se shell deve eseguire l'operazione. I tipi validi sono:
Valore | Descrizione |
---|---|
IDYES | Consente l'operazione. |
IDNO | Impedisce l'operazione in questa cartella, ma continua con qualsiasi altra operazione approvata, ad esempio un'operazione di copia batch. |
IDCANCEL | Impedisce l'operazione corrente e annulla tutte le operazioni in sospeso. |
Commenti
Shell chiama ogni gestore di hook di copia registrato per una cartella o un oggetto stampante fino a quando non sono stati chiamati tutti i gestori oppure fino a quando uno di essi restituisce IDNO o IDCANCEL.
I gestori di hook di copia per le cartelle vengono registrati nella chiave seguente:
HKEY_CLASSES_ROOT/Directory/Shellex/CopyHookHandlers/your_copyhook/{copyhook CLSID value}
I gestori di hook di copia per le stampanti vengono registrati sotto la chiave seguente.
HKEY_CLASSES_ROOT/Stampanti/Shellex/CopyHookHandlers/your_copyhook/{copyhook CLSID value}
Quando questo metodo viene chiamato, Shell inizializza l'interfaccia ICopyHookW direttamente senza usare prima un'interfaccia IShellExtInit .
Requisiti
Requisito | Valore |
---|---|
Intestazione | shlobj.h |