Función FsRtlMupGetProviderInfoFromFileObject (ntifs.h)
La rutina FsRtlMupGetProviderInfoFromFileObject obtiene información sobre un redirector de red registrado con el proveedor UNC múltiple (MUP) de un objeto de archivo para un archivo que se encuentra en un sistema de archivos remoto.
Sintaxis
NTSTATUS FsRtlMupGetProviderInfoFromFileObject(
[in] PFILE_OBJECT pFileObject,
[in] ULONG Level,
[out] PVOID pBuffer,
[in, out] PULONG pBufferSize
);
Parámetros
[in] pFileObject
Puntero a un objeto de archivo de un archivo que se encuentra en un sistema de archivos remoto.
[in] Level
Nivel de información que devuelve la rutina de FsRtlMupGetProviderInfoFromFileObject. Para obtener más información sobre los valores posibles para este parámetro, vea la sección Comentarios.
[out] pBuffer
Puntero a un búfer que recibe la información devuelta por el rutina FsRtlMupGetProviderInfoFromFileObject. Para obtener más información sobre el formato de los datos que se devuelven en este búfer, vea la sección Comentarios.
[in, out] pBufferSize
Puntero a una variable con tipo ULONG que contiene el tamaño, en bytes, del búfer al que apunta el parámetro pBuffer. Si la rutina se realiza correctamente, esta variable recibe el tamaño, en bytes, de los datos que se devuelven en el búfer.
Valor devuelto
La rutina FsRtlMupGetProviderInfoFromFileObject devuelve uno de los siguientes valores NTSTATUS.
Código devuelto | Descripción |
---|---|
|
La información sobre el redirector de red se devolvió correctamente en el búfer al que apunta el parámetro pBuffer . |
|
Uno de los parámetros se NULL o contenía un valor no válido. |
|
El objeto de archivo al que apunta el parámetro pFileObject no corresponde a un objeto de archivo del sistema de archivos remoto completamente abierto. |
|
El tamaño del búfer al que apunta el parámetro pBuffer es demasiado pequeño para devolver los datos. En esta situación, la variable a la que apunta el parámetro pBufferSize recibe el tamaño necesario, en bytes, del búfer. |
|
El tamaño del búfer al que apunta el parámetro pBuffer es demasiado pequeño para devolver todos los datos. Solo se devolvieron los datos que caben en el búfer. En esta situación, la variable a la que apunta el parámetro pBufferSize recibe el tamaño necesario, en bytes, del búfer. |
Observaciones
Un controlador de filtro del sistema de archivos puede llamar a la rutina FsRtlMupGetProviderInfoFromFileObject para obtener información sobre un redirector de red desde un objeto de archivo para un archivo que se encuentra en un sistema de archivos remoto. La cantidad de información que devuelve el
typedef struct _FSRTL_MUP_PROVIDER_INFO_LEVEL_1 {
ULONG32 ProviderId;
} FSRTL_MUP_PROVIDER_INFO_LEVEL_1, *PFSRTL_MUP_PROVIDER_INFO_LEVEL_1;
Si el parámetro level de
typedef struct _FSRTL_MUP_PROVIDER_INFO_LEVEL_2 {
ULONG32 ProviderId;
UNICODE_STRING ProviderName;
} FSRTL_MUP_PROVIDER_INFO_LEVEL_2, *PFSRTL_MUP_PROVIDER_INFO_LEVEL_2;
Un controlador de filtro del sistema de archivos puede comparar rápidamente el valor del identificador del proveedor con el valor de otros identificadores de proveedor sin necesidad de realizar una comparación de cadenas.
El valor del identificador de proveedor UNC para un redirector de red determinado sigue siendo el mismo si el redirector de red se descarga del sistema y, a continuación, se vuelve a cargar en el sistema.
Para obtener el identificador de proveedor UNC de un redirector de red del nombre del dispositivo del redirector de red, un controlador de filtro del sistema de archivos puede llamar a la rutina FsRtlMupGetProviderIdFromName.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | La función FsRtlMupGetProviderInfoFromFileObject es Windows Vista |
de la plataforma de destino de |
Universal |
encabezado de |
ntifs.h (incluya Ntifs.h) |
biblioteca de |
NtosKrnl.lib |
DLL de |
NtosKrnl.exe |
irQL | <= APC_LEVEL |