有关驱动程序函数

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、函数:SetupDiAskForOEMDisk

功能:对OME安装磁盘路径的用户显示一个对话框

WINSETUPAPI BOOL WINAPI

SetupDiAskForOEMDisk(

IN HDEVINFO DeviceInfoSet,

IN PSP_DEVINFO_DATA DeviceInfoData OPTIONAL

);

参数:DeviceInfoSet

一个处理本地计算机上的设备信息集合,这个集合包含一个正在安装的设备信息

DeviceInfoData

对一个SP_DEVINFO_DATA结构体来规定有关DeviceInfoSet设备信息元素的指针。

此参数是可选的,可以为NULL。如果这个参数被指定(赋值),SetupDiAskForOEMDisk要关联与正在安装的设备的驱动程序。如果该参数为NULL,SetupDiAskForOEMDisk要关联与全局性的DeviceInfoSet驱动程序列表中的驱动程序。

返回值:如果它是正确则返回TRUE并且SP_DEVINSTALLPARAMS结构DriverPath 字段更新,以反映新的路径。如果用户取消对话框,该函数返回FALSE,并以GetLastError返回调用ERROR_CANCELLED

2、函数:SetupDiBuildClassInfoList

功能:返回一个设置类的GUID列表,这个列表是确定是在本地计算机上安装类

WINSETUPAPI BOOL WINAPI

SetupDiBuildClassInfoList(

IN DWORD Flags,

OUT LPGUID ClassGuidList,

IN DWORD ClassGuidListSize,

OUT PDWORD RequiredSize

)

参数:Flags:用于控制那些类是排除在列表中的类。如果没有指定Flags,所有的设置类都要列入列表中。可以是下列值的组合:DIBCI_NOINSTALLCLASS排除一类是否在其注册表项值项NoInstallClass;DIBCI_NODISPLAYCLASS排除一类是否在其注册表项值项NoDisplayClass

ClassGuidList:一个GUID指针类型的数组,收到的安装类GUID列表。该指针是可选的,可以为NULL

ClassGuidListSize:由ClassGuildList参数指向数组中GUIDs的数量(容量)。如果ClassGuidList为NULL,ClassGuidSize必须为零

RequiredSize:一个DWORD指针类型的变量,它接收GUID返回的数字(如果数字小于或等于在GUID中指向的ClassGuidList参数数组的大小,如果这个数字比ClassGuidList 数组的大小大,它表示有多大ClassGuidList数组必须以包含在GUID中)。

返回值:如果正确返回TRUE,否则返回FALSE,并且可以记录检索GetLastError函数调用的错误。

3、函数:SetupDiBuildClassInfoListEx

功能:返回一个设置GUID类的列表,其中包括在本地系统或远程系统上安装的每一个类

WINSETUPAPI BOOL WINAPI

SetupDiBuildClassInfoListEx(

IN DWORD Flags,

OUT LPGUID ClassGuidList,

IN DWORD ClassGuidListSize,

OUT PDWORD RequiredSize,

IN PCTSTR MachineName..OPTIONAL,

IN PVOID Reserved,

)

参数:Flags:用于控制那些类是排除在列表中的类。如果没有指定Flags,所有的设置类都要列入列表中。可以是下列值的组合:DIBCI_NOINSTALLCLASS排除一类有否在其注册表项NoInstallClass值项。DIBCI_NODISPLAYCLASS排除一类有否在其注册表项NoDisplayClass值项。

ClassGuidList:一个接收的安装GUID类的列表的缓冲区的指针

ClassGuidListSize:提供在ClassGuildList数组里GUIDs的数量

RequiredSize:一个DWORD指针类型的变量,它接收GUID返回的数字(如果数字小于或等于在GUID中指向的ClassGuidList参数数组的大小,如果这个数字比ClassGuidList数组的大小大,它表示有多大ClassGuidList数组必须以包含在GUID中)。

MachineName:以NULL指针结束的字符串,其中包含从远程计算机上安装的检索设置类的名称。此参数是可选的,可以为NULL。如果MachineName是NULL,则这个函数建立一个本地计算机上安装的类的列表

Reserved:必须为NULL

返回值:如果正确返回TRUE,否则返回FALSE,并且可以记录检索GetLastError 函数调用的错误。

4、函数:SetupDiBuildDriverInfoList

功能:建立一个与一个特定的设备,或与全球级的设备驱动程序列表中的信息相关的驱动程序的列表。

WINSETUPAPI BOOL WINAPI

SetupDiBuildDriverInfoList(

IN HDEVINFO DeviceInfoSet,

IN OUT PSP_DEVINFO_DA TA DeviceInfoData..OPTIONAL,

IN DWORD DriverType

)

参数:DeviceInfoSet:一个设备信息设置的句柄,这些句柄包含在驱动程序列表中,无论是所有设备的信息元素或单个设备的信息内容具体。该设备信息集不能包含远程设备的信息内容

DeviceInfoDat:一个SP_DEVINFO_DATA结构的指针,对于这个SP_DEVINFO_DATA 结构里都是在DeviceInfoSet的设备信息元素,其中这些元素表示了该设备建立的驱动程序列表。此参数是可选的,可以为NULL。如果该参数指定,要与指定的设备联系。

如果该参数为NULL,DeviceInfoSet驱动程序与列表相关联。如果这个设备类别因为建立一个兼容的驱动程序的清单而更新,则DeviceInfoData.ClassGuid更新后再返回。

DriverType:驱动程序列表的建立类型。必须是下列值之一:SPDIT_CLASSDRIVER建立一个类驱动程序的列表。如果DeviceInfoData为NULL,该驱动程序列表类型必

相关文档
最新文档