RtlLargeIntegerToChar.3w

Langue: en

Version: Jun 2009 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

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 ' ' terminated when length allows it. When str fits exactly in length characters the ' ' 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

Defined in "winternl.h".

Implemented in "dlls/ntdll/large_int.c".