mirror of
https://github.com/reactos/reactos.git
synced 2025-01-04 21:38:43 +00:00
Add RtlFormatMessage stub.
svn path=/trunk/; revision=10497
This commit is contained in:
parent
86f612b5f1
commit
6f267c1f3c
3 changed files with 53 additions and 16 deletions
|
@ -1,4 +1,4 @@
|
||||||
; $Id: ntdll.def,v 1.126 2004/08/09 18:17:22 jimtabor Exp $
|
; $Id: ntdll.def,v 1.127 2004/08/11 09:30:23 ekohl Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
|
@ -163,9 +163,9 @@ NtPrivilegedServiceAuditAlarm@20
|
||||||
NtPrivilegeObjectAuditAlarm@24
|
NtPrivilegeObjectAuditAlarm@24
|
||||||
NtProtectVirtualMemory@20
|
NtProtectVirtualMemory@20
|
||||||
NtPulseEvent@8
|
NtPulseEvent@8
|
||||||
NtQueryAttributesFile@8
|
NtQueryAttributesFile@8
|
||||||
NtQueryDefaultLocale@8
|
NtQueryDefaultLocale@8
|
||||||
NtQueryDirectoryFile@44
|
NtQueryDirectoryFile@44
|
||||||
NtQueryDirectoryObject@28
|
NtQueryDirectoryObject@28
|
||||||
NtQueryEaFile@36
|
NtQueryEaFile@36
|
||||||
NtQueryEvent@20
|
NtQueryEvent@20
|
||||||
|
@ -437,7 +437,7 @@ RtlFindSetBitsAndClear@12
|
||||||
RtlFirstFreeAce@8
|
RtlFirstFreeAce@8
|
||||||
;RtlFlushPropertySet
|
;RtlFlushPropertySet
|
||||||
RtlFormatCurrentUserKeyPath@4
|
RtlFormatCurrentUserKeyPath@4
|
||||||
;RtlFormatMessage@36
|
RtlFormatMessage@32
|
||||||
RtlFreeAnsiString@4
|
RtlFreeAnsiString@4
|
||||||
RtlFreeHandle@8
|
RtlFreeHandle@8
|
||||||
RtlFreeHeap@12
|
RtlFreeHeap@12
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; $Id: ntdll.edf,v 1.116 2004/08/09 18:17:22 jimtabor Exp $
|
; $Id: ntdll.edf,v 1.117 2004/08/11 09:30:23 ekohl Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
|
@ -372,7 +372,6 @@ RtlDeleteAce=RtlDeleteAce@8
|
||||||
RtlDeleteAtomFromAtomTable=RtlDeleteAtomFromAtomTable@8
|
RtlDeleteAtomFromAtomTable=RtlDeleteAtomFromAtomTable@8
|
||||||
RtlDeleteCriticalSection=RtlDeleteCriticalSection@4
|
RtlDeleteCriticalSection=RtlDeleteCriticalSection@4
|
||||||
RtlDuplicateUnicodeString=RtlDuplicateUnicodeString@12
|
RtlDuplicateUnicodeString=RtlDuplicateUnicodeString@12
|
||||||
RtlSetCriticalSectionSpinCount=RtlSetCriticalSectionSpinCount@8
|
|
||||||
;RtlDeleteElementGenericTable
|
;RtlDeleteElementGenericTable
|
||||||
;RtlDeleteNoSplay
|
;RtlDeleteNoSplay
|
||||||
RtlDeleteOwnersRanges=RtlDeleteOwnersRanges@8
|
RtlDeleteOwnersRanges=RtlDeleteOwnersRanges@8
|
||||||
|
@ -437,7 +436,7 @@ RtlFindSetBitsAndClear=RtlFindSetBitsAndClear@12
|
||||||
RtlFirstFreeAce=RtlFirstFreeAce@8
|
RtlFirstFreeAce=RtlFirstFreeAce@8
|
||||||
;RtlFlushPropertySet
|
;RtlFlushPropertySet
|
||||||
RtlFormatCurrentUserKeyPath=RtlFormatCurrentUserKeyPath@4
|
RtlFormatCurrentUserKeyPath=RtlFormatCurrentUserKeyPath@4
|
||||||
;RtlFormatMessage
|
RtlFormatMessage=RtlFormatMessage@32
|
||||||
RtlFreeAnsiString=RtlFreeAnsiString@4
|
RtlFreeAnsiString=RtlFreeAnsiString@4
|
||||||
RtlFreeHandle=RtlFreeHandle@8
|
RtlFreeHandle=RtlFreeHandle@8
|
||||||
RtlFreeHeap=RtlFreeHeap@12
|
RtlFreeHeap=RtlFreeHeap@12
|
||||||
|
@ -555,7 +554,7 @@ RtlQueryProcessDebugInformation=RtlQueryProcessDebugInformation@12
|
||||||
;RtlQueryPropertyNames
|
;RtlQueryPropertyNames
|
||||||
;RtlQueryPropertySet
|
;RtlQueryPropertySet
|
||||||
RtlQueryRegistryValues=RtlQueryRegistryValues@20
|
RtlQueryRegistryValues=RtlQueryRegistryValues@20
|
||||||
;RtlQuerySecutityObject
|
;RtlQuerySecurityObject
|
||||||
;RtlQueryTagHeap
|
;RtlQueryTagHeap
|
||||||
RtlQueryTimeZoneInformation=RtlQueryTimeZoneInformation@4
|
RtlQueryTimeZoneInformation=RtlQueryTimeZoneInformation@4
|
||||||
RtlRaiseException=RtlRaiseException@4
|
RtlRaiseException=RtlRaiseException@4
|
||||||
|
@ -577,6 +576,7 @@ RtlSelfRelativeToAbsoluteSD=RtlSelfRelativeToAbsoluteSD@44
|
||||||
RtlSetAllBits=RtlSetAllBits@4
|
RtlSetAllBits=RtlSetAllBits@4
|
||||||
;RtlSetAttributesSecurityDescriptor
|
;RtlSetAttributesSecurityDescriptor
|
||||||
RtlSetBits=RtlSetBits@12
|
RtlSetBits=RtlSetBits@12
|
||||||
|
RtlSetCriticalSectionSpinCount=RtlSetCriticalSectionSpinCount@8
|
||||||
RtlSetCurrentDirectory_U=RtlSetCurrentDirectory_U@4
|
RtlSetCurrentDirectory_U=RtlSetCurrentDirectory_U@4
|
||||||
RtlSetCurrentEnvironment=RtlSetCurrentEnvironment@8
|
RtlSetCurrentEnvironment=RtlSetCurrentEnvironment@8
|
||||||
RtlSetDaclSecurityDescriptor=RtlSetDaclSecurityDescriptor@16
|
RtlSetDaclSecurityDescriptor=RtlSetDaclSecurityDescriptor@16
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
/* $Id: message.c,v 1.6 2004/07/03 17:40:23 navaraf Exp $
|
/* $Id: message.c,v 1.7 2004/08/11 09:30:04 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
* PURPOSE: Message table functions
|
* PURPOSE: Message table functions
|
||||||
* FILE: lib/ntdll/rtl/message.c
|
* FILE: lib/ntdll/rtl/message.c
|
||||||
* PROGRAMER: Eric Kohl <ekohl@zr-online.de>
|
* PROGRAMER: Eric Kohl
|
||||||
* REVISION HISTORY:
|
* REVISION HISTORY:
|
||||||
* 29/05/2001: Created
|
* 29/05/2001: Created
|
||||||
*/
|
*/
|
||||||
|
@ -19,6 +19,9 @@
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @implemented
|
||||||
|
*/
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
RtlFindMessage(PVOID BaseAddress,
|
RtlFindMessage(PVOID BaseAddress,
|
||||||
ULONG Type,
|
ULONG Type,
|
||||||
|
@ -46,7 +49,7 @@ RtlFindMessage(PVOID BaseAddress,
|
||||||
&ResourceDataEntry);
|
&ResourceDataEntry);
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
return(Status);
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
DPRINT("ResourceDataEntry: %p\n", ResourceDataEntry);
|
DPRINT("ResourceDataEntry: %p\n", ResourceDataEntry);
|
||||||
|
@ -57,7 +60,7 @@ RtlFindMessage(PVOID BaseAddress,
|
||||||
NULL);
|
NULL);
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
return(Status);
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
DPRINT("MessageTable: %p\n", MessageTable);
|
DPRINT("MessageTable: %p\n", MessageTable);
|
||||||
|
@ -112,12 +115,46 @@ RtlFindMessage(PVOID BaseAddress,
|
||||||
*MessageResourceEntry = MessageEntry;
|
*MessageResourceEntry = MessageEntry;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(STATUS_SUCCESS);
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/**********************************************************************
|
||||||
RtlFormatMessage
|
* RtlFormatMessage (NTDLL.@)
|
||||||
|
*
|
||||||
|
* Formats a message (similar to sprintf).
|
||||||
|
*
|
||||||
|
* PARAMS
|
||||||
|
* Message [I] Message to format.
|
||||||
|
* MaxWidth [I] Maximum width in characters of each output line.
|
||||||
|
* IgnoreInserts [I] Whether to copy the message without processing inserts.
|
||||||
|
* Ansi [I] Whether Arguments may have ANSI strings.
|
||||||
|
* ArgumentsIsArray [I] Whether Arguments is actually an array rather than a va_list *.
|
||||||
|
* Arguments [I]
|
||||||
|
* Buffer [O] Buffer to store processed message in.
|
||||||
|
* BufferSize [I] Size of Buffer (in bytes?).
|
||||||
|
*
|
||||||
|
* RETURNS
|
||||||
|
* NTSTATUS code.
|
||||||
|
*
|
||||||
|
* @unimplemented
|
||||||
*/
|
*/
|
||||||
|
NTSTATUS STDCALL
|
||||||
|
RtlFormatMessage(PWSTR Message,
|
||||||
|
UCHAR MaxWidth,
|
||||||
|
BOOLEAN IgnoreInserts,
|
||||||
|
BOOLEAN Ansi,
|
||||||
|
BOOLEAN ArgumentIsArray,
|
||||||
|
va_list *Arguments,
|
||||||
|
PWSTR Buffer,
|
||||||
|
ULONG BufferSize)
|
||||||
|
{
|
||||||
|
DPRINT1("RtlFormatMessage(%S, %u, %s, %s, %s, %s, %p, %lu)\n",
|
||||||
|
Message, MaxWidth, IgnoreInserts ? "TRUE" : "FALSE", Ansi ? "TRUE" : "FALSE",
|
||||||
|
ArgumentIsArray ? "TRUE" : "FALSE", Arguments, Buffer, BufferSize);
|
||||||
|
|
||||||
|
UNIMPLEMENTED;
|
||||||
|
return STATUS_NOT_IMPLEMENTED;
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
Loading…
Reference in a new issue