enumeración PRJ_NOTIFICATION (projectedfslib.h)
Valor de notificación especificado al enviar la devolución de llamada de PRJ_NOTIFICATION_CB.
Syntax
typedef enum PRJ_NOTIFICATION {
PRJ_NOTIFICATION_FILE_OPENED = 0x00000002,
PRJ_NOTIFICATION_NEW_FILE_CREATED = 0x00000004,
PRJ_NOTIFICATION_FILE_OVERWRITTEN = 0x00000008,
PRJ_NOTIFICATION_PRE_DELETE = 0x00000010,
PRJ_NOTIFICATION_PRE_RENAME = 0x00000020,
PRJ_NOTIFICATION_PRE_SET_HARDLINK = 0x00000040,
PRJ_NOTIFICATION_FILE_RENAMED = 0x00000080,
PRJ_NOTIFICATION_HARDLINK_CREATED = 0x00000100,
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_NO_MODIFICATION = 0x00000200,
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_MODIFIED = 0x00000400,
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_DELETED = 0x00000800,
PRJ_NOTIFICATION_FILE_PRE_CONVERT_TO_FULL = 0x00001000
} ;
Constantes
PRJ_NOTIFICATION_FILE_OPENED Valor: 0x00000002 : indica que se ha creado un identificador en un archivo o carpeta existente. - El proveedor puede especificar una nueva máscara de notificación para este archivo o carpeta al responder a la notificación. |
PRJ_NOTIFICATION_NEW_FILE_CREATED Valor: 0x00000004 - Se ha creado un nuevo archivo o carpeta. - El proveedor puede especificar una nueva máscara de notificación para este archivo o carpeta al responder a la notificación. |
PRJ_NOTIFICATION_FILE_OVERWRITTEN Valor: 0x00000008 - Se ha sobrescrito o supercedido un archivo existente. - El proveedor puede especificar una nueva máscara de notificación para este archivo o carpeta al responder a la notificación. |
PRJ_NOTIFICATION_PRE_DELETE Valor: 0x00000010 - Un archivo o carpeta está a punto de eliminarse. - Si el proveedor devuelve un código HRESULT de error de la devolución de llamada, la eliminación no surtirá efecto. |
PRJ_NOTIFICATION_PRE_RENAME Valor: 0x00000020 - Se va a cambiar el nombre de un archivo o carpeta. - Si el proveedor devuelve un código HRESULT de error de la devolución de llamada, el cambio de nombre no surtirá efecto. - Si el parámetro callbackData-FilePathName> de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el cambio de nombre mueve el archivo o directorio desde fuera de la instancia de virtualización. En ese caso, esta notificación siempre se enviará si el proveedor ha registrado una devolución de llamada PRJ_NOTIFICATION_CB , incluso si el proveedor no especificó este bit al registrar el subárbol que contiene la ruta de acceso de destino. Sin embargo, si el proveedor especificado PRJ_NOTIFICATION_SUPPRESS_NOTIFICATIONS al registrar el subárbol que contiene la ruta de acceso de destino, se suprimirá la notificación. - Si el parámetro destinationFileName de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el cambio de nombre está moviendo el archivo o carpeta fuera de la instancia de virtualización. - Si los parámetros callbackData-FilePathName> y destinationFileName de PRJ_NOTIFICATION_CB son cadenas no vacías, esto indica que el cambio de nombre está dentro de la instancia de virtualización. Si el proveedor especificó diferentes máscaras de notificación para las rutas de acceso de origen y destino en el miembro NotificationMappings del parámetro options de PrjStartVirtualizing, esta notificación se enviará si el proveedor especificó este bit al registrar las rutas de acceso de origen o de destino. |
PRJ_NOTIFICATION_PRE_SET_HARDLINK Valor: 0x00000040 - Se va a crear un vínculo físico para el archivo. - Si el proveedor devuelve un código HRESULT de error de la devolución de llamada, la operación de vínculo físico no surtirá efecto. - Si el parámetro callbackData-FilePathName> de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el nombre del vínculo físico se creará dentro de la instancia de virtualización, es decir, se crea un nuevo vínculo físico dentro de la instancia de virtualización en un archivo que existe fuera de la instancia de virtualización. En ese caso, esta notificación siempre se enviará si el proveedor ha registrado una devolución de llamada de PRJ_NOTIFICATION_CB , incluso si el proveedor no especificó este bit al registrar el subárbol donde estará el nuevo nombre del vínculo duro. Sin embargo, si el proveedor especificado PRJ_NOTIFICATION_SUPPRESS_NOTIFICATIONS al registrar el subárbol que contiene la ruta de acceso de destino, se suprimirá la notificación. - Si el parámetro destinationFileName de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el nombre del vínculo físico se creará fuera de la instancia de virtualización, es decir, se crea un nuevo vínculo físico fuera de la instancia de virtualización para un archivo que existe dentro de la instancia de virtualización. - Si los parámetros callbackData-FilePathName> y destinationFileName de PRJ_NOTIFICATION_CB son cadenas no vacías, esto indica que el nuevo vínculo físico se creará dentro de la instancia de virtualización para un archivo que existe dentro de la instancia de virtualización. Si el proveedor especificó diferentes máscaras de notificación para las rutas de acceso de origen y destino en el miembro NotificationMappings del parámetro options de PrjStartVirtualizing, esta notificación se enviará si el proveedor especificó este bit al registrar las rutas de acceso de origen o de destino. |
PRJ_NOTIFICATION_FILE_RENAMED Valor: 0x00000080 : indica que se ha cambiado el nombre de un archivo o carpeta. Es posible que el archivo o la carpeta se hayan movido a la instancia de virtualización. - Si el parámetro callbackData-FilePathName> de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el cambio de nombre movió el archivo o directorio desde fuera de la instancia de virtualización. En ese caso, ProjFS siempre enviará esta notificación si el proveedor ha registrado una devolución de llamada de PRJ_NOTIFICATION_CB, incluso si el proveedor no especificó este bit al registrar el subárbol que contiene la ruta de acceso de destino. - Si el parámetro destinationFileName de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el cambio de nombre movió el archivo o directorio fuera de la instancia de virtualización. - Si los parámetros callbackData-FilePathName> y destinationFileName de PRJ_NOTIFICATION_CB son cadenas no vacías, esto indica que el cambio de nombre estaba dentro de la instancia de virtualización. Si el proveedor especificó máscaras de notificación diferentes para las rutas de acceso de origen y destino en el miembro NotificationMappings del parámetro options de PrjStartVirtualizing, ProjFS enviará esta notificación si el proveedor especificó este bit al registrar las rutas de acceso de origen o destino. - El proveedor puede especificar una nueva máscara de notificación para este archivo o directorio al responder a la notificación. |
PRJ_NOTIFICATION_HARDLINK_CREATED Valor: 0x00000100 : indica que se ha creado un vínculo físico para el archivo. - Si el parámetro callbackData-FilePathName> de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el nombre del vínculo físico se creó dentro de la instancia de virtualización, es decir, se creó un nuevo vínculo físico dentro de la instancia de virtualización en un archivo que existe fuera de la instancia de virtualización. En ese caso ProjFS siempre enviará esta notificación si el proveedor ha registrado una devolución de llamada de PRJ_NOTIFICATION_CB, incluso si el proveedor no especificó este bit al registrar el subárbol donde estará el nuevo nombre del vínculo duro. - Si el parámetro destinationFileName de PRJ_NOTIFICATION_CB es una cadena vacía, esto indica que el nombre del vínculo físico se creó fuera de la instancia de virtualización, es decir, se creó un nuevo vínculo físico fuera de la instancia de virtualización para un archivo que existe dentro de la instancia de virtualización. - Si los parámetros callbackData-FilePathName> y destinationFileName de PRJ_NOTIFICATION_CB son cadenas no vacías, esto indica que se creó un nuevo vínculo físico dentro de la instancia de virtualización para un archivo que existe dentro de la instancia de virtualización. Si el proveedor especificó máscaras de notificación diferentes para las rutas de acceso de origen y destino en el miembro NotificationMappings del parámetro options de PrjStartVirtualizing, ProjFS enviará esta notificación si el proveedor especificó este bit al registrar las rutas de acceso de origen o destino. |
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_NO_MODIFICATION Valor: 0x00000200 - Se ha cerrado un identificador en el archivo o carpeta, y el contenido del archivo no se modificó mientras el identificador estaba abierto, y el archivo o carpeta no se eliminó. |
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_MODIFIED Valor: 0x00000400 - Se ha cerrado un identificador en el archivo y que el contenido del archivo se modificó mientras el identificador estaba abierto. |
PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_DELETED Valor: 0x00000800 - Se ha cerrado un identificador en el archivo o carpeta y que se eliminó como parte del cierre del identificador. - Si el proveedor también se registró para recibir notificaciones de PRJ_NOTIFICATION_FILE_HANDLE_CLOSED_FILE_MODIFIED y el archivo se modificó con el identificador cuyo cierre resultó en eliminar el archivo, entonces el parámetro operationParameters-FileDeletedOnHandleClose.IsFileModified> de PRJ_NOTIFICATION_CB será TRUE. Esto solo se aplica a archivos, no directorios |
PRJ_NOTIFICATION_FILE_PRE_CONVERT_TO_FULL Valor: 0x00001000 - El archivo está a punto de expandirse de un marcador de posición a un archivo completo, es decir, es probable que se modifique su contenido. - Si el proveedor devuelve un código HRESULT de error de la devolución de llamada, el archivo no se expandirá a un archivo completo y se producirá un error en la E/S que desencadenó la conversión. - Si hay varias E/S de carreras que expandirían el mismo archivo, el proveedor recibirá este valor de notificación solo una vez para el archivo. |
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] |
Encabezado | projectedfslib.h |