从 INF 文件中提取文件信息
打开 INF 文件后,可以从该文件中收集信息以生成用户界面或指导安装过程。 设置函数提供多个级别的功能,用于从 INF 文件收集信息。
以下示例使用 SetupGetSourceInfo 函数从 INF 文件中检索源媒体的用户可读说明。
#include <windows.h>
#include <setupapi.h>
BOOL test;
HINF MyInf;
UINT SourceId;
PTSTR Buffer;
DWORD MaxBufSize;
DWORD BufSize;
int main()
{
test = SetupGetSourceInfo (
MyInf, //Handle to the INF file to access
SourceId, //Id of the source media
SRCINFO_DESCRIPTION, //which information to retrieve
Buffer, //a pointer to the buffer to receive the information
MaxBufSize, //the size allocated for the buffer
&BufSize //buffer size actually needed
);
return 0;
}
在本示例中,MyInf 是打开的 INF 文件的句柄。 SourceId 是特定源媒体的标识符。 值SRCINFO_DESCRIPTION指定 SetupGetSourceInfo 函数应检索源媒体说明。 Buffer 指向将接收说明的字符串,MaxBufSize 指示分配给缓冲区的资源,BufSize 指示存储缓冲区所需的资源。
如果 BufSize 大于 MaxBufSize,则函数将返回 FALSE,并且对 GetLastError 的后续调用将返回ERROR_INSUFFICIENT_BUFFER。