Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenmkhive.h
Go to the documentation of this file.
00001 /* 00002 * ReactOS kernel 00003 * Copyright (C) 2003, 2006 ReactOS Team 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License along 00016 * with this program; if not, write to the Free Software Foundation, Inc., 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 00018 */ 00019 /* COPYRIGHT: See COPYING in the top level directory 00020 * PROJECT: ReactOS hive maker 00021 * FILE: tools/mkhive/mkhive.h 00022 * PURPOSE: Hive maker 00023 * PROGRAMMER: Eric Kohl 00024 * Hervé Poussineau 00025 */ 00026 00027 #pragma once 00028 00029 #include <stdio.h> 00030 #include <stdlib.h> 00031 00032 #include <typedefs.h> 00033 00034 // Definitions copied from <ntstatus.h> 00035 // We only want to include host headers, so we define them manually 00036 #define STATUS_SUCCESS ((NTSTATUS)0x00000000) 00037 #define STATUS_UNSUCCESSFUL ((NTSTATUS)0xC0000001) 00038 #define STATUS_NOT_IMPLEMENTED ((NTSTATUS)0xC0000002) 00039 #define STATUS_INVALID_PARAMETER ((NTSTATUS)0xC000000D) 00040 #define STATUS_NO_MEMORY ((NTSTATUS)0xC0000017) 00041 #define STATUS_INSUFFICIENT_RESOURCES ((NTSTATUS)0xC000009A) 00042 #define STATUS_OBJECT_NAME_NOT_FOUND ((NTSTATUS)0xC0000034) 00043 #define STATUS_INVALID_PARAMETER_2 ((NTSTATUS)0xC00000F0) 00044 #define STATUS_BUFFER_OVERFLOW ((NTSTATUS)0x80000005) 00045 00046 unsigned char BitScanForward(ULONG * Index, unsigned long Mask); 00047 unsigned char BitScanReverse(ULONG * const Index, unsigned long Mask); 00048 #define RtlFillMemoryUlong(dst, len, val) memset(dst, val, len) 00049 00050 NTSTATUS NTAPI 00051 RtlAnsiStringToUnicodeString( 00052 IN OUT PUNICODE_STRING UniDest, 00053 IN PANSI_STRING AnsiSource, 00054 IN BOOLEAN AllocateDestinationString); 00055 VOID NTAPI 00056 RtlInitAnsiString( 00057 IN OUT PANSI_STRING DestinationString, 00058 IN PCSTR SourceString); 00059 VOID NTAPI 00060 RtlInitUnicodeString( 00061 IN OUT PUNICODE_STRING DestinationString, 00062 IN PCWSTR SourceString); 00063 WCHAR NTAPI 00064 RtlUpcaseUnicodeChar( 00065 IN WCHAR Source); 00066 00067 LONG WINAPI 00068 RegQueryValueExW( 00069 IN HKEY hKey, 00070 IN LPCWSTR lpValueName, 00071 IN PULONG lpReserved, 00072 OUT PULONG lpType, 00073 OUT PUCHAR lpData, 00074 OUT PSIZE_T lpcbData); 00075 00076 LONG WINAPI 00077 RegSetValueExW( 00078 IN HKEY hKey, 00079 IN LPCWSTR lpValueName OPTIONAL, 00080 IN ULONG Reserved, 00081 IN ULONG dwType, 00082 IN const UCHAR* lpData, 00083 IN USHORT cbData); 00084 00085 LONG WINAPI 00086 RegDeleteKeyW( 00087 IN HKEY hKey, 00088 IN LPCWSTR lpSubKey); 00089 00090 LONG WINAPI 00091 RegDeleteValueW( 00092 IN HKEY hKey, 00093 IN LPCWSTR lpValueName OPTIONAL); 00094 00095 LONG WINAPI 00096 RegCreateKeyW( 00097 IN HKEY hKey, 00098 IN LPCWSTR lpSubKey, 00099 OUT PHKEY phkResult); 00100 00101 LONG WINAPI 00102 RegOpenKeyW( 00103 IN HKEY hKey, 00104 IN LPCWSTR lpSubKey, 00105 OUT PHKEY phkResult); 00106 00107 #define CMLIB_HOST 00108 #include <cmlib.h> 00109 #include <infhost.h> 00110 #include "reginf.h" 00111 #include "cmi.h" 00112 #include "registry.h" 00113 #include "binhive.h" 00114 00115 #define HIVE_NO_FILE 2 00116 #define VERIFY_REGISTRY_HIVE(hive) 00117 extern LIST_ENTRY CmiHiveListHead; 00118 #define ABS_VALUE(V) (((V) < 0) ? -(V) : (V)) 00119 00120 #ifndef max 00121 #define max(a, b) (((a) > (b)) ? (a) : (b)) 00122 #endif 00123 00124 #ifndef min 00125 #define min(a, b) (((a) < (b)) ? (a) : (b)) 00126 #endif 00127 00128 #ifdef _WIN32 00129 #define strncasecmp _strnicmp 00130 #define strcasecmp _stricmp 00131 #else 00132 #include <string.h> 00133 #endif//_WIN32 00134 00135 00136 /* EOF */ Generated on Sat May 26 2012 04:36:36 for ReactOS by
1.7.6.1
|