PRJ_NOTIFICATION_CB función de devolución de llamada (projectedfslib.h)
Entrega notificaciones al proveedor sobre las operaciones del sistema de archivos.
Sintaxis
PRJ_NOTIFICATION_CB PrjNotificationCb;
HRESULT PrjNotificationCb(
[in] const PRJ_CALLBACK_DATA *callbackData,
[in] BOOLEAN isDirectory,
[in] PRJ_NOTIFICATION notification,
[in, optional] PCWSTR destinationFileName,
[in, out] PRJ_NOTIFICATION_PARAMETERS *operationParameters
)
{...}
Parámetros
[in] callbackData
Información sobre la operación. Los siguientes miembros callbackData son necesarios para implementar esta devolución de llamada:
- FilePathName Identifica la ruta de acceso del archivo o directorio al que pertenece la notificación.
El proveedor solo puede acceder a este búfer mientras se ejecuta la devolución de llamada. Si desea lápiz la operación y requiere datos de este búfer, debe realizar su propia copia.
[in] isDirectory
TRUE si el campo FilePathName de callbackData hace referencia a un directorio, FALSE en caso contrario.
[in] notification
Valor de PRJ_NOTIFICATION que especifica la notificación.
[in, optional] destinationFileName
Si la notificación se PRJ_NOTIFICATION_PRE_RENAME o PRJ_NOTIFICATION_PRE_SET_HARDLINK, apunta a una cadena Unicode terminada en null que especifica la ruta de acceso, relativa a la raíz de virtualización, del destino de la operación de cambio de nombre o establecimiento de vínculo duro.
[in, out] operationParameters
Puntero a una unión de PRJ_NOTIFICATION_PARAMETERS que especifica parámetros adicionales para determinados valores de notificación:
PRJ_NOTIFICATION_FILE_OPENED, PRJ_NOTIFICATION_NEW_FILE_CREATED o PRJ_NOTIFICATION_FILE_OVERWRITTEN
-
Se especifican los campos del miembro PostCreate . Estos campos son:
NotificationMask
-
Tras la devolución de llamada del PRJ_NOTIFICATION_CB, el proveedor puede especificar un nuevo conjunto de notificaciones que desea recibir para el archivo aquí.
Si el proveedor establece este valor en 0, equivale a especificar PRJ_NOTIFY_USE_EXISTING_MASK.
-
Tras la devolución de llamada del PRJ_NOTIFICATION_CB, el proveedor puede especificar un nuevo conjunto de notificaciones que desea recibir para el archivo aquí.
PRJ_NOTIFICATION_FILE_RENAMED
-
Se especifican los campos del miembro FileRenamed . Estos campos son:
NotificationMask
-
Tras la devolución de llamada del PRJ_NOTIFICATION_CB, el proveedor puede especificar un nuevo conjunto de notificaciones que desea recibir para el archivo aquí.
Si el proveedor establece este valor en 0, equivale a especificar PRJ_NOTIFY_USE_EXISTING_MASK.
-
Tras la devolución de llamada del PRJ_NOTIFICATION_CB, el proveedor puede especificar un nuevo conjunto de notificaciones que desea recibir para el archivo aquí.
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_DELETED
-
Se especifican los campos del miembro FileDeletedOnHandleClose . Estos campos son:
NotificationMask
- Si el proveedor registrado para PRJ_NOTIFY_FILE_HANDLE_CLOSED_FILE_MODIFIED así como PRJ_NOTIFY_FILE_HANDLE_CLOSED_FILE_DELETED, este campo se establece en TRUE si el archivo se modificó antes de que se eliminara.
Valor devuelto
Código devuelto | Descripción |
---|---|
|
El proveedor procesó correctamente la notificación. |
|
El proveedor desea completar la operación más adelante. |
Un código de error HRESULT adecuado si el proveedor produce un error en la operación. En el caso de las notificaciones previas a la operación (operaciones con "PRE" en su nombre), si el proveedor devuelve un código de error ProjFS producirá un error en la operación correspondiente con el código de error proporcionado.
Comentarios
Esta devolución de llamada es opcional. Si el proveedor no proporciona una implementación de esta devolución de llamada, no recibirá notificaciones.
El proveedor se registra para las notificaciones que desea recibir cuando llama a PrjStartVirtualizing.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10, versión 1809 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | projectedfslib.h |