test: edithive.h Source File

Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

# edithive.h

Go to the documentation of this file.

    00001 /*++
    00002
    00003 Copyright (c) 1991  Microsoft Corporation
    00004
    00005 Module Name:
    00006
    00007     edithive.h
    00008
    00009 Abstract:
    00010
    00011     include for user-mode hive editing library
    00012
    00013 Author:
    00014
    00015     John Vert (jvert) 27-Mar-1992
    00016
    00017 Revision History:
    00018
    00019 --*/
    00020
    00021 #include "ntos.h"
    00022 #include "cmp.h"
    00023
    00024
    00025
    00026 #define TYPE_SIMPLE     0
    00027 #define TYPE_LOG        1
    00028 #define TYPE_ALT        2
    00029
    00030
    00031 HANDLE
    00032 EhOpenHive(
    00033     IN PUNICODE_STRING FileName,
    00034     OUT PHANDLE RootCell,
    00035     OUT PUNICODE_STRING RootName,
    00036     IN ULONG HiveType
    00037     );
    00038
    00039 VOID
    00040 EhCloseHive(
    00041     IN HANDLE Hive
    00042     );
    00043
    00044 NTSTATUS
    00045 EhEnumerateValueKey(
    00046     IN HANDLE HiveHandle,
    00047     IN HANDLE CellHandle,
    00048     IN ULONG Index,
    00049     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
    00050     IN PVOID KeyValueInformation,
    00051     IN ULONG Length,
    00052     IN PULONG ResultLength
    00053     );
    00054
    00055 NTSTATUS
    00056 EhEnumerateKey(
    00057     IN HANDLE HiveHandle,
    00058     IN HANDLE CellHandle,
    00059     IN ULONG Index,
    00060     IN KEY_INFORMATION_CLASS KeyInformationClass,
    00061     IN PVOID KeyInformation,
    00062     IN ULONG Length,
    00063     IN PULONG ResultLength
    00064     );
    00065
    00066 NTSTATUS
    00067 EhOpenChildByName(
    00068     HANDLE HiveHandle,
    00069     HANDLE KeyHandle,
    00070     PUNICODE_STRING  Name,
    00071     PHANDLE ChildCell
    00072     );
    00073
    00074 NTSTATUS
    00075 EhCreateChild(
    00076     IN HANDLE HiveHandle,
    00077     IN HANDLE CellHandle,
    00078     IN PUNICODE_STRING  Name,
    00079     OUT PHANDLE ChildCell,
    00080     OUT PULONG Disposition OPTIONAL
    00081     );
    00082
    00083 NTSTATUS
    00084 EhQueryKey(
    00085     IN HANDLE HiveHandle,
    00086     IN HANDLE KeyHandle,
    00087     IN KEY_INFORMATION_CLASS KeyInformationClass,
    00088     IN PVOID KeyInformation,
    00089     IN ULONG Length,
    00090     IN PULONG ResultLength
    00091     );
    00092
    00093 NTSTATUS
    00094 EhQueryValueKey(
    00095     IN HANDLE HiveHandle,
    00096     IN HANDLE KeyHandle,
    00097     IN PUNICODE_STRING ValueName,
    00098     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
    00099     IN PVOID KeyValueInformation,
    00100     IN ULONG Length,
    00101     IN PULONG ResultLength
    00102     );
    00103
    00104 NTSTATUS
    00105 EhSetValueKey(
    00106     IN HANDLE HiveHandle,
    00107     IN HANDLE CellHandle,
    00108     IN PUNICODE_STRING ValueName,
    00109     IN ULONG TitleIndex OPTIONAL,
    00110     IN ULONG Type,
    00111     IN PVOID Data,
    00112     IN ULONG DataSize
    00113     );
    00114
    00115 NTSTATUS
    00116 EhDeleteValueKey(
    00117     IN HANDLE Hive,
    00118     IN HANDLE Cell,
    00119     IN PUNICODE_STRING ValueName         // RAW
    00120     );
    00121
    00122 PSECURITY_DESCRIPTOR
    00123 EhGetKeySecurity(
    00124     IN HANDLE HiveHandle,
    00125     IN HANDLE KeyHandle
    00126     );
    00127