WdmlibRtlInitUnicodeStringEx, fonction (wdmsec.h)
La fonction WdmlibRtlInitUnicodeStringEx initialise une chaîne comptée de caractères Unicode.
Syntaxe
NTSTATUS WdmlibRtlInitUnicodeStringEx(
[out] PUNICODE_STRING DestinationString,
[in, optional] PCWSTR SourceString
);
Paramètres
[out] DestinationString
Pointeur vers la structure UNICODE_STRING à initialiser.
[in, optional] SourceString
Pointeur vers une chaîne de caractères larges terminée par null. Cette chaîne est utilisée pour initialiser la chaîne comptée pointée par DestinationString.
Valeur retournée
WdmlibRtlInitUnicodeStringEx retourne STATUS_SUCCESS si elle réussit, sinon, la méthode peut retourner d’autres valeurs NTSTATUS.
Remarques
La routine copie la valeur du pointeur SourceString dans le membre Buffer de la structure UNICODE_STRING pointée par DestinationString. Le membre Length de cette structure est défini sur la longueur, en octets, de la chaîne source, à l’exclusion de la valeur Null de fin. Le membre MaximumLength de la structure est défini sur la longueur, en octets, de la chaîne source, y compris la valeur Null de fin. Si SourceString a la valeur NULL, Length et MaximumLength sont tous deux définis sur zéro.
WdmlibRtlInitUnicodeStringEx ne modifie pas la chaîne source pointée vers sourceString.
Notes
Si la chaîne source est plus longue que MAX_USTRING - 1 octet, WdmlibRtlInitUnicodeStringEx définit le membre Length de la structure UNICODE_STRING pointée par DestinationString sur MAX_USTRING - 2, et définit le membre MaximumLength de cette structure sur MAX_USTRING. Dans ce cas, les valeurs Length et MaximumLength dénaturent la longueur de la chaîne source terminée par null, et s’appuyer sur la précision de ces valeurs est potentiellement dangereux.
Les appelants de WdmlibRtlInitUnicodeStringEx peuvent s’exécuter à IRQL <= DISPATCH_LEVEL si la mémoire tampon DestinationString n’est pas modifiable. En règle générale, les appelants s’exécutent à IRQL = PASSIVE_LEVEL, car la plupart des autres routines rtlXxxString ne peuvent pas être appelées au PASSIVE_LEVEL IRQL > .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | wdmsec.h (inclure Wdmsec.h, Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Consultez la section Notes. |