Función PrjWritePlaceholderInfo2 (projectedfslib.h)
Envía metadatos de archivo o directorio a ProjFS y permite al autor de la llamada especificar información extendida.
Sintaxis
HRESULT PrjWritePlaceholderInfo2(
[in] PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT namespaceVirtualizationContext,
[in] PCWSTR destinationFileName,
[in] const PRJ_PLACEHOLDER_INFO *placeholderInfo,
[in] UINT32 placeholderInfoSize,
const PRJ_EXTENDED_INFO *ExtendedInfo
);
Parámetros
[in] namespaceVirtualizationContext
Identificador opaco para la instancia de virtualización. Debe ser el valor del miembro VirtualizationInstanceHandle de callbackData pasado al proveedor en la devolución de llamada PRJ_GET_PLACEHOLDER_INFO_CB .
[in] destinationFileName
Cadena Unicode terminada en null que especifica la ruta de acceso, relativa a la raíz de virtualización, al archivo o directorio para el que se va a crear un marcador de posición.
Debe ser una coincidencia con el miembro FilePathName del parámetro callbackData pasado al proveedor en la devolución de llamada PRJ_GET_PLACEHOLDER_INFO_CB . El proveedor debe usar la función PrjFileNameCompare para determinar si los dos nombres coinciden.
Por ejemplo, si la devolución de llamada del PRJ_GET_PLACEHOLDER_INFO_CB especifica "dir1\dir1\FILE.TXT" en callbackData-FilePathName> y el almacén de respaldo del proveedor contiene un archivo denominado "File.txt" en el directorio dir1\dir2 y PrjFileNameCompare devuelve 0 al comparar los nombres "FILE.TXT" y "File.txt", el proveedor especifica "dir1\dir2\File.txt" como valor de este parámetro.
[in] placeholderInfo
Puntero a los metadatos del archivo o directorio.
[in] placeholderInfoSize
Tamaño en bytes del búfer al que apunta placeholderInfo.
ExtendedInfo
Puntero a un PRJ_EXTENDED_INFO estructura que especifica información extendida sobre el marcador de posición que se va a crear.
Valor devuelto
Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
El proveedor usa esta rutina para proporcionar los datos solicitados en una invocación de su PRJ_GET_PLACEHOLDER_INFO_CB devolución de llamada, o puede usarlo para establecer de forma proactiva un marcador de posición.
Los miembros EaInformation, SecurityInformation y StreamsInformation de PRJ_PLACEHOLDER_INFO son opcionales. Si el proveedor no desea proporcionar atributos extendidos, descriptores de seguridad personalizados o flujos de datos alternativos, debe establecer estos campos en 0.
Vínculos simbólicos
Para especificar que este marcador de posición es un vínculo simbólico, el proveedor da formato a un búfer con una sola estructura de PRJ_EXTENDED_INFO y le pasa un puntero en el extendedInfo
parámetro . El proveedor establece los campos de la estructura de la siguiente manera:
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINK
extendedInfo.NextInfoOffset = 0
extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10, versión 2004 (10.0; Compilación 19041) |
Servidor mínimo compatible | Windows Server, versión 2004 (10.0; Compilación 19041) |
Plataforma de destino | Windows |
Encabezado | projectedfslib.h |