160 lines
2.2 KiB
C
160 lines
2.2 KiB
C
#ifndef _DNINF_
|
|
#define _DNINF_
|
|
|
|
|
|
//
|
|
// returns a handle to use for further inf parsing
|
|
//
|
|
|
|
int
|
|
DnInitINFBuffer (
|
|
IN FILE *InfFileHandle,
|
|
OUT PVOID *pINFHandle,
|
|
OUT unsigned *LineNumber
|
|
);
|
|
|
|
|
|
//
|
|
// frees an INF Buffer
|
|
//
|
|
|
|
int
|
|
DnFreeINFBuffer (
|
|
IN PVOID INFHandle
|
|
);
|
|
|
|
|
|
//
|
|
// searches for the existance of a particular section
|
|
//
|
|
|
|
BOOLEAN
|
|
DnSearchINFSection (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName
|
|
);
|
|
|
|
|
|
//
|
|
// given section name, line number and index return the value.
|
|
//
|
|
|
|
PCHAR
|
|
DnGetSectionLineIndex (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN unsigned LineIndex,
|
|
IN unsigned ValueIndex
|
|
);
|
|
|
|
|
|
//
|
|
// given section name, key searches existance
|
|
//
|
|
|
|
BOOLEAN
|
|
DnGetSectionKeyExists (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN PCHAR Key
|
|
);
|
|
|
|
//
|
|
// given section name, entry searches existance as key or first value
|
|
//
|
|
|
|
|
|
BOOLEAN
|
|
DnGetSectionEntryExists (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN PCHAR Entry
|
|
);
|
|
|
|
//
|
|
// given section name, key and index return the value
|
|
//
|
|
|
|
PCHAR
|
|
DnGetSectionKeyIndex (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN PCHAR Key,
|
|
IN unsigned ValueIndex
|
|
);
|
|
|
|
|
|
//
|
|
// given section name and line index, return key
|
|
//
|
|
|
|
PCHAR
|
|
DnGetKeyName (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN unsigned LineIndex
|
|
);
|
|
|
|
|
|
//
|
|
// Return a handle to a new INF handle
|
|
//
|
|
|
|
PVOID
|
|
DnNewSetupTextFile (
|
|
VOID
|
|
);
|
|
|
|
|
|
//
|
|
// Write an Inf file to disk
|
|
//
|
|
|
|
BOOLEAN
|
|
DnWriteSetupTextFile (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR FileName
|
|
);
|
|
|
|
|
|
//
|
|
// Add a line to a section in the
|
|
// inf file
|
|
//
|
|
|
|
VOID
|
|
DnAddLineToSection (
|
|
IN PVOID INFHandle,
|
|
IN PCHAR SectionName,
|
|
IN PCHAR KeyName,
|
|
IN PCHAR Values[],
|
|
IN ULONG ValueCount
|
|
);
|
|
|
|
|
|
//
|
|
// Get the next section name in the inf file
|
|
//
|
|
|
|
PCHAR
|
|
DnGetSectionName (
|
|
IN PVOID INFHandle
|
|
);
|
|
|
|
|
|
//
|
|
// Copy a section from one inf to another inf
|
|
//
|
|
|
|
VOID
|
|
DnCopySetupTextSection (
|
|
IN PVOID FromInf,
|
|
IN PVOID ToInf,
|
|
IN PCHAR SectionName
|
|
);
|
|
|
|
|
|
#endif // _DNINF
|
|
|
|
|