mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 19:03:00 +00:00
Implemented some registry functions.
svn path=/trunk/; revision=1980
This commit is contained in:
parent
ab5917c0c7
commit
c4b00c80d8
5 changed files with 77 additions and 14 deletions
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: rtl.h,v 1.27 2001/05/27 11:10:25 ekohl Exp $
|
/* $Id: rtl.h,v 1.28 2001/06/17 22:52:37 ekohl Exp $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -460,6 +460,32 @@ RtlIsValidIndexHandle (
|
||||||
IN ULONG Index
|
IN ULONG Index
|
||||||
);
|
);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
STDCALL
|
||||||
|
RtlpNtCreateKey (
|
||||||
|
OUT HANDLE KeyHandle,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||||
|
IN ULONG Unused1,
|
||||||
|
OUT PULONG Disposition,
|
||||||
|
IN ULONG Unused2
|
||||||
|
);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
STDCALL
|
||||||
|
RtlpNtMakeTemporaryKey (
|
||||||
|
IN HANDLE KeyHandle
|
||||||
|
);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
STDCALL
|
||||||
|
RtlpNtOpenKey (
|
||||||
|
OUT HANDLE KeyHandle,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||||
|
IN ULONG Unused
|
||||||
|
);
|
||||||
|
|
||||||
#endif /* __INCLUDE_NTDLL_RTL_H */
|
#endif /* __INCLUDE_NTDLL_RTL_H */
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; $Id: ntdll.def,v 1.75 2001/06/17 20:05:09 ea Exp $
|
; $Id: ntdll.def,v 1.76 2001/06/17 22:53:14 ekohl Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
|
@ -593,10 +593,10 @@ RtlValidateProcessHeaps@0
|
||||||
RtlWriteRegistryValue@24
|
RtlWriteRegistryValue@24
|
||||||
;RtlZeroHeap
|
;RtlZeroHeap
|
||||||
RtlZeroMemory@8
|
RtlZeroMemory@8
|
||||||
;RtlpNtCreateKey
|
RtlpNtCreateKey@24
|
||||||
;RtlpNtEnumerateSubKey
|
;RtlpNtEnumerateSubKey
|
||||||
RtlpNtMakeTemporaryKey@4
|
RtlpNtMakeTemporaryKey@4
|
||||||
;RtlpNtOpenKey
|
RtlpNtOpenKey@16
|
||||||
;RtlpNtQueryValueKey
|
;RtlpNtQueryValueKey
|
||||||
;RtlpNtSetValueKey
|
;RtlpNtSetValueKey
|
||||||
;RtlpUnWaitCriticalSection
|
;RtlpUnWaitCriticalSection
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; $Id: ntdll.edf,v 1.64 2001/06/17 20:05:10 ea Exp $
|
; $Id: ntdll.edf,v 1.65 2001/06/17 22:53:14 ekohl Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
|
@ -592,10 +592,10 @@ RtlValidateProcessHeaps=RtlValidateProcessHeaps@0
|
||||||
RtlWriteRegistryValue=RtlWriteRegistryValue@24
|
RtlWriteRegistryValue=RtlWriteRegistryValue@24
|
||||||
;RtlZeroHeap
|
;RtlZeroHeap
|
||||||
RtlZeroMemory=RtlZeroMemory@8
|
RtlZeroMemory=RtlZeroMemory@8
|
||||||
;RtlpNtCreateKey
|
RtlpNtCreateKey=RtlpNtCreateKey@24
|
||||||
;RtlpNtEnumerateSubKey
|
;RtlpNtEnumerateSubKey
|
||||||
RtlpNtMakeTemporaryKey=RtlpNtMakeTemporaryKey@4
|
RtlpNtMakeTemporaryKey=RtlpNtMakeTemporaryKey@4
|
||||||
;RtlpNtOpenKey
|
RtlpNtOpenKey=RtlpNtOpenKey@16
|
||||||
;RtlpNtQueryValueKey
|
;RtlpNtQueryValueKey
|
||||||
;RtlpNtSetValueKey
|
;RtlpNtSetValueKey
|
||||||
;RtlpUnWaitCriticalSection
|
;RtlpUnWaitCriticalSection
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: registry.c,v 1.3 2001/05/30 20:00:34 ekohl Exp $
|
/* $Id: registry.c,v 1.4 2001/06/17 22:53:57 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -100,7 +100,9 @@ RtlDeleteRegistryValue(IN ULONG RelativeTo,
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
RtlFormatCurrentUserKeyPath(PUNICODE_STRING KeyPath)
|
RtlFormatCurrentUserKeyPath(PUNICODE_STRING KeyPath)
|
||||||
{
|
{
|
||||||
return STATUS_UNSUCCESSFUL;
|
RtlCreateUnicodeString(KeyPath,
|
||||||
|
L"\\Registry\\User\\.Default");
|
||||||
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -292,9 +294,47 @@ RtlWriteRegistryValue(IN ULONG RelativeTo,
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
RtlpNtMakeTemporaryKey(HANDLE KeyHandle)
|
RtlpNtCreateKey(OUT HANDLE KeyHandle,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||||
|
IN ULONG Unused1,
|
||||||
|
OUT PULONG Disposition,
|
||||||
|
IN ULONG Unused2)
|
||||||
{
|
{
|
||||||
return NtDeleteKey(KeyHandle);
|
if (ObjectAttributes != NULL)
|
||||||
|
ObjectAttributes->Attributes &=
|
||||||
|
~(OBJ_PERMANENT | OBJ_EXCLUSIVE);
|
||||||
|
|
||||||
|
return(NtCreateKey(KeyHandle,
|
||||||
|
DesiredAccess,
|
||||||
|
ObjectAttributes,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
Disposition));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
NTSTATUS STDCALL
|
||||||
|
RtlpNtMakeTemporaryKey(IN HANDLE KeyHandle)
|
||||||
|
{
|
||||||
|
return(NtDeleteKey(KeyHandle));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
NTSTATUS STDCALL
|
||||||
|
RtlpNtOpenKey(OUT HANDLE KeyHandle,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||||
|
IN ULONG Unused)
|
||||||
|
{
|
||||||
|
if (ObjectAttributes != NULL)
|
||||||
|
ObjectAttributes->Attributes &=
|
||||||
|
~(OBJ_PERMANENT | OBJ_EXCLUSIVE);
|
||||||
|
|
||||||
|
return(NtOpenKey(KeyHandle,
|
||||||
|
DesiredAccess,
|
||||||
|
ObjectAttributes));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -26,10 +26,7 @@ STUB(PfxRemovePrefix)
|
||||||
STUB(RestoreEm87Context)
|
STUB(RestoreEm87Context)
|
||||||
STUB(RtlWalkHeap)
|
STUB(RtlWalkHeap)
|
||||||
STUB(RtlZeroHeap)
|
STUB(RtlZeroHeap)
|
||||||
STUB(RtlpNtCreateKey)
|
|
||||||
STUB(RtlpNtEnumerateSubKey)
|
STUB(RtlpNtEnumerateSubKey)
|
||||||
STUB(RtlpNtMakeTemporaryKey)
|
|
||||||
STUB(RtlpNtOpenKey)
|
|
||||||
STUB(RtlpNtQueryValueKey)
|
STUB(RtlpNtQueryValueKey)
|
||||||
STUB(RtlpNtSetValueKey)
|
STUB(RtlpNtSetValueKey)
|
||||||
STUB(RtlpUnWaitCriticalSection)
|
STUB(RtlpUnWaitCriticalSection)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue