Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygeninffile.h
Go to the documentation of this file.
00001 /* 00002 * ReactOS kernel 00003 * Copyright (C) 2002, 2003 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 /* $Id: inffile.h 45685 2010-02-26 11:43:19Z gedmurphy $ 00020 * COPYRIGHT: See COPYING in the top level directory 00021 * PROJECT: ReactOS text-mode setup 00022 * FILE: subsys/system/usetup/infcache.h 00023 * PURPOSE: INF file parser that caches contents of INF file in memory 00024 * PROGRAMMER: Royce Mitchell III 00025 * Eric Kohl 00026 */ 00027 00028 #pragma once 00029 00030 #define STATUS_BAD_SECTION_NAME_LINE (0xC0700001) 00031 #define STATUS_SECTION_NAME_TOO_LONG (0xC0700002) 00032 #define STATUS_WRONG_INF_STYLE (0xC0700003) 00033 #define STATUS_NOT_ENOUGH_MEMORY (0xC0700004) 00034 00035 #define MAX_INF_STRING_LENGTH 512 00036 00037 typedef PULONG HINF, *PHINF; 00038 00039 typedef struct _INFCONTEXT 00040 { 00041 PVOID Inf; 00042 // PVOID CurrentInf; 00043 PVOID Section; 00044 PVOID Line; 00045 } INFCONTEXT, *PINFCONTEXT; 00046 00047 00048 /* FUNCTIONS ****************************************************************/ 00049 00050 BOOLEAN 00051 InfOpenFile (PHINF InfHandle, 00052 PCSTR FileName, 00053 PULONG ErrorLine); 00054 00055 VOID 00056 InfCloseFile (HINF InfHandle); 00057 00058 00059 BOOLEAN 00060 InfFindFirstLine (HINF InfHandle, 00061 PCSTR Section, 00062 PCSTR Key, 00063 PINFCONTEXT Context); 00064 00065 BOOLEAN 00066 InfFindNextLine (PINFCONTEXT ContextIn, 00067 PINFCONTEXT ContextOut); 00068 00069 BOOLEAN 00070 InfFindFirstMatchLine (PINFCONTEXT ContextIn, 00071 PCHAR Key, 00072 PINFCONTEXT ContextOut); 00073 00074 BOOLEAN 00075 InfFindNextMatchLine (PINFCONTEXT ContextIn, 00076 PCHAR Key, 00077 PINFCONTEXT ContextOut); 00078 00079 00080 LONG 00081 InfGetLineCount (HINF InfHandle, 00082 PCHAR Section); 00083 00084 LONG 00085 InfGetFieldCount (PINFCONTEXT Context); 00086 00087 00088 BOOLEAN 00089 InfGetBinaryField (PINFCONTEXT Context, 00090 ULONG FieldIndex, 00091 PUCHAR ReturnBuffer, 00092 ULONG ReturnBufferSize, 00093 PULONG RequiredSize); 00094 00095 BOOLEAN 00096 InfGetIntField (PINFCONTEXT Context, 00097 ULONG FieldIndex, 00098 LONG *IntegerValue); 00099 00100 BOOLEAN 00101 InfGetMultiSzField (PINFCONTEXT Context, 00102 ULONG FieldIndex, 00103 PCHAR ReturnBuffer, 00104 ULONG ReturnBufferSize, 00105 PULONG RequiredSize); 00106 00107 BOOLEAN 00108 InfGetStringField (PINFCONTEXT Context, 00109 ULONG FieldIndex, 00110 PCHAR ReturnBuffer, 00111 ULONG ReturnBufferSize, 00112 PULONG RequiredSize); 00113 00114 00115 00116 BOOLEAN 00117 InfGetData (PINFCONTEXT Context, 00118 PCHAR *Key, 00119 PCHAR *Data); 00120 00121 BOOLEAN 00122 InfGetDataField (PINFCONTEXT Context, 00123 ULONG FieldIndex, 00124 PCSTR *Data); 00125 00126 /* EOF */ Generated on Sat May 26 2012 04:16:54 for ReactOS by
1.7.6.1
|