找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1340|回复: 2

枚举设备信息的DDK函数的lv实现??

[复制链接]
发表于 2007-1-24 15:37:49 | 显示全部楼层 |阅读模式
枚举设备信息函数SetupDiGetClassDevs,用call library function node 实现,在参数设置中出现问题,无法返回正确结果。请高手指教

1、函数结构如下:
HDEVINFO
    SetupDiGetClassDevs(

        IN PGUID  ClassGuid,    /* optional */

        IN PCTSTR  Enumerator,    /* optional */

        IN HWND  hwndParent,    /* optional */

        IN DWORD  Flags
        );

2、要实现的语句
#define DIGCF_PRESENT           0x00000002
#define DIGCF_DEVICEINTERFACE   0x00000010
HDEVINFO hDevInfoList = SetupDiGetClassDevs (&m_GUID, NULL, NULL, (DIGCF_PRESENT | DIGCF_DEVICEINTERFACE));

3、lv实现
如附件。其中的GUID采用了一些常数值。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2007-1-24 17:17:06 | 显示全部楼层
老兄呀,你不来是不来一来就搞难题,
GUID的获得你应知道了,可以通过注册表获得
GUID的定义如下,这是个例子

Disk类的GUID为“53f56307-b6bf-11d0-94f2-00a0c91efb8b”,在我们的程序里可以定义为
const GUID DiskClassGuid = {0x53f56307L, 0xb6bf, 0x11d0, {0x94, 0xf2, 0x00, 0xa0, 0xc9, 0x1e, 0xfb, 0x8b)};

在LV中定义也须要这样子,
另外输出的是句柄,你须要用U32类型吧
回复 顶

使用道具 举报

 楼主| 发表于 2007-1-24 23:29:04 | 显示全部楼层
呵呵,我是隆重出场阿。

  GUID={0x53f56307L, 0xb6bf, 0x11d0, {0x94, 0xf2, 0x00, 0xa0, 0xc9, 0x1e, 0xfb, 0x8b)}在lv里怎么实现?是我例子中方法(簇)吧?查了好多资料都说用簇,但都不详细。  
  输出的句柄用U32也不对i,里面的数据类型我差不多试遍了,得到的值都与用vc运行程序的值不一样。
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-29 21:13 , Processed in 0.056442 second(s), 13 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表