Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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_OPENEDValor: 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_CREATEDValor: 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_OVERWRITTENValor: 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_DELETEValor: 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_RENAMEValor: 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_HARDLINKValor: 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_RENAMEDValor: 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_CREATEDValor: 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_MODIFICATIONValor: 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_MODIFIEDValor: 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_DELETEDValor: 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_FULLValor: 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 |