Función RtlFindUnicodePrefix (ntifs.h)
La rutina RtlFindUnicodePrefix busca la mejor coincidencia para un nombre de archivo Unicode determinado en una tabla de prefijos.
Sintaxis
NTSYSAPI PUNICODE_PREFIX_TABLE_ENTRY RtlFindUnicodePrefix(
[in] PUNICODE_PREFIX_TABLE PrefixTable,
[in] PCUNICODE_STRING FullName,
[in] ULONG CaseInsensitiveIndex
);
Parámetros
[in] PrefixTable
Puntero a la tabla de prefijos. La tabla debe haberse inicializado llamando a RtlInitializeUnicodePrefix.
[in] FullName
Puntero a una cadena Unicode que contiene el nombre de ruta de acceso completo de un archivo.
[in] CaseInsensitiveIndex
Posición en el nombre de archivo y las cadenas de prefijo en las que la comparación se va a distinguir entre mayúsculas y minúsculas. La comparación de cadenas distingue mayúsculas de minúsculas para los primeros caracteres CaseInsensitiveIndex de cada cadena, sin distinción entre mayúsculas y minúsculas durante el resto de la cadena.
Valor | Significado |
---|---|
0 | La comparación de cadenas no distingue mayúsculas de minúsculas. |
1..FullName.Length-1 | La comparación de cadenas distingue mayúsculas de minúsculas para los caracteres de las posiciones 0 a CaseInsensitiveIndex-1, sin distinción entre mayúsculas y minúsculas para los caracteres de la posición CaseInsensitiveIndex al final de la cadena. |
FullName.Length | La comparación de cadenas distingue mayúsculas de minúsculas. |
Valor devuelto
RtlFindUnicodePrefix devuelve un puntero al prefijo adecuado más largo encontrado para la cadena especificada en FullName. Si no se encuentra ningún prefijo coincidente, RtlFindUnicodePrefix devuelve NULL.
Comentarios
Cada entrada de prefijo de la tabla es un nombre de ruta de acceso relativo al directorio raíz de un volumen del sistema de archivos. Para tener un formato correcto, el prefijo debe comenzar con una sola barra diagonal inversa ().
Cuando encuentra un prefijo coincidente, RtlFindUnicodePrefix reequilibra el árbol de reproducción de la tabla de prefijos.
Los sistemas de archivos deben llamar a RtlInitializeUnicodePrefix para inicializar la tabla de prefijos antes de usar cualquier otro rtl.. Rutinas UnicodePrefix en él. La estructura de la tabla de prefijo inicializada debe considerarse opaca.
Llamadores de Rtl.. Las rutinas UnicodePrefix son responsables de sincronizar el acceso a la tabla de prefijos. Una exclusión mutua rápida es el mecanismo de sincronización más eficaz que se usará para este fin.
Para obtener información sobre otras rutinas de control de cadenas, vea Rutinas de la biblioteca en tiempo de ejecución (RTL).
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP |
Servidor mínimo compatible | Windows Server 2003 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |