NAME

RtlLargeIntegerToChar  (NTDLL.@)

SYNOPSIS

 NTSTATUS RtlLargeIntegerToChar
 (
  const ULONGLONG* value_ptr,
  ULONG            base,
  ULONG            length,
  PCHAR            str
 )

PARAMS

value_ptr [In] Pointer to the value to be converted.
base [In] Number base for conversion (allowed 0,2,8,10 or 16).
length [In] Length of the str buffer in bytes.
str [Out] Destination for the converted value.

DESCRIPTION

Convert an unsigned large integer to a character string.

RETURNS

Success: STATUS_SUCCESS. str contains the converted number

Failure: STATUS_INVALID_PARAMETER, if base is not 0, 2, 8, 10 or 16. STATUS_BUFFER_OVERFLOW, if str would be larger than length. STATUS_ACCESS_VIOLATION, if str is NULL.

NOTES

Instead of base 0 it uses 10 as base. Writes at most length characters to the string str. Str is '\0' terminated when length allows it. When str fits exactly in length characters the '\0' is omitted. If value_ptr is NULL it crashes, as the native function does.

DIFFERENCES

- Accept base 0 as 10 instead of crashing as native function does.

- The native function does produce garbage or STATUS_BUFFER_OVERFLOW for base 2, 8 and 16 when the value is larger than 0xFFFFFFFF.

IMPLEMENTATION

Declared in "include/winternl.h". gitlab.winehq.org/wine/wine/blob/master/include/winternl.h

Implemented in "dlls/ntdll/large_int.c". gitlab.winehq.org/wine/wine/blob/master/dlls/ntdll/large_int.c


Copyright © 2024 The Wine Project. All trademarks are the property of their respective owners. Visit WineHQ for license details. Generated Nov 2024.