Interfaz ICopyHookW (shlobj.h)
Expone un método que crea un controlador de enlace de copia . Un controlador de enlace de copia es una extensión de Shell que determina si se puede mover, copiar, cambiar el nombre o eliminar un objeto de carpeta o impresora de Shell. Shell llama al método ICopyHookW::CopyCallback antes de realizar una de estas operaciones.
Herencia
La interfaz ICopyHookW hereda de la interfaz IUnknown.
Métodos
La interfaz
ICopyHookW::CopyCallback Determina si el shell podrá mover, copiar, eliminar o cambiar el nombre de una carpeta o un objeto de impresora. (Unicode) |
Observaciones
El controlador de enlace de copia, que es un servidor OLE en proceso (un archivo DLL), no realiza la tarea en sí, pero aprueba o desaprueba la acción. Si shell recibe la aprobación del controlador de enlace de copia, realiza la operación del sistema de archivos. Los controladores de enlace de copia no están informados sobre el éxito de una operación, por lo que no pueden supervisar las acciones realizadas en objetos de carpeta a menos que se use findFirstChangeNotification.
Un objeto folder puede tener varios controladores de enlace de copia. Por ejemplo, incluso si el Shell ya tiene un controlador de enlace de copia registrado para un objeto de carpeta determinado, todavía puede registrar uno de los suyos propios. Si se registran dos o más controladores de enlace de copia para un objeto, shell simplemente llama a cada uno de ellos antes de realizar una de las operaciones del sistema de archivos especificadas.
Shell inicializa
CopyCallback devuelve un valor int que indica si shell debe realizar la operación. Shell llamará a cada controlador de enlace de copia registrado para un objeto de carpeta hasta que se haya llamado a todos los controladores o hasta que uno de ellos haya devuelto un valor distinto de IDYES. El controlador devuelve IDYES para especificar que se debe realizar la operación, o IDNO o IDCANCEL para especificar que se debe interrumpir la operación.
Implemente un controlador de enlace de copia cuando desee controlar cuándo, o si, estas operaciones del sistema de archivos se realizan en un objeto determinado. Es posible que quiera usar un controlador de enlace de copia en carpetas compartidas, por ejemplo.
No se llama directamente a esta extensión de Shell. el shell llama a copyCallback antes de mover, copiar, eliminar o cambiar el nombre de un objeto de carpeta de Shell.
Nota
El encabezado shlobj.h define ICopyHook como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
encabezado de |
shlobj.h |