127 lines
2.2 KiB
C
127 lines
2.2 KiB
C
|
/*++
|
|||
|
|
|||
|
Copyright (c) 1991 Microsoft Corporation
|
|||
|
|
|||
|
Module Name:
|
|||
|
|
|||
|
edithive.h
|
|||
|
|
|||
|
Abstract:
|
|||
|
|
|||
|
include for user-mode hive editing library
|
|||
|
|
|||
|
Author:
|
|||
|
|
|||
|
John Vert (jvert) 27-Mar-1992
|
|||
|
|
|||
|
Revision History:
|
|||
|
|
|||
|
--*/
|
|||
|
|
|||
|
#include "ntos.h"
|
|||
|
#include "cmp.h"
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#define TYPE_SIMPLE 0
|
|||
|
#define TYPE_LOG 1
|
|||
|
#define TYPE_ALT 2
|
|||
|
|
|||
|
|
|||
|
HANDLE
|
|||
|
EhOpenHive(
|
|||
|
IN PUNICODE_STRING FileName,
|
|||
|
OUT PHANDLE RootCell,
|
|||
|
OUT PUNICODE_STRING RootName,
|
|||
|
IN ULONG HiveType
|
|||
|
);
|
|||
|
|
|||
|
VOID
|
|||
|
EhCloseHive(
|
|||
|
IN HANDLE Hive
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhEnumerateValueKey(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE CellHandle,
|
|||
|
IN ULONG Index,
|
|||
|
IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
|
|||
|
IN PVOID KeyValueInformation,
|
|||
|
IN ULONG Length,
|
|||
|
IN PULONG ResultLength
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhEnumerateKey(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE CellHandle,
|
|||
|
IN ULONG Index,
|
|||
|
IN KEY_INFORMATION_CLASS KeyInformationClass,
|
|||
|
IN PVOID KeyInformation,
|
|||
|
IN ULONG Length,
|
|||
|
IN PULONG ResultLength
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhOpenChildByName(
|
|||
|
HANDLE HiveHandle,
|
|||
|
HANDLE KeyHandle,
|
|||
|
PUNICODE_STRING Name,
|
|||
|
PHANDLE ChildCell
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhCreateChild(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE CellHandle,
|
|||
|
IN PUNICODE_STRING Name,
|
|||
|
OUT PHANDLE ChildCell,
|
|||
|
OUT PULONG Disposition OPTIONAL
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhQueryKey(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE KeyHandle,
|
|||
|
IN KEY_INFORMATION_CLASS KeyInformationClass,
|
|||
|
IN PVOID KeyInformation,
|
|||
|
IN ULONG Length,
|
|||
|
IN PULONG ResultLength
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhQueryValueKey(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE KeyHandle,
|
|||
|
IN PUNICODE_STRING ValueName,
|
|||
|
IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
|
|||
|
IN PVOID KeyValueInformation,
|
|||
|
IN ULONG Length,
|
|||
|
IN PULONG ResultLength
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhSetValueKey(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE CellHandle,
|
|||
|
IN PUNICODE_STRING ValueName,
|
|||
|
IN ULONG TitleIndex OPTIONAL,
|
|||
|
IN ULONG Type,
|
|||
|
IN PVOID Data,
|
|||
|
IN ULONG DataSize
|
|||
|
);
|
|||
|
|
|||
|
NTSTATUS
|
|||
|
EhDeleteValueKey(
|
|||
|
IN HANDLE Hive,
|
|||
|
IN HANDLE Cell,
|
|||
|
IN PUNICODE_STRING ValueName // RAW
|
|||
|
);
|
|||
|
|
|||
|
PSECURITY_DESCRIPTOR
|
|||
|
EhGetKeySecurity(
|
|||
|
IN HANDLE HiveHandle,
|
|||
|
IN HANDLE KeyHandle
|
|||
|
);
|
|||
|
|