vfengb 发表于 2005-10-18 06:31:16

咨询 huhuyo,如何用CVI编程实现关断U盘

<P>我正好也想做一个这样的程序,但你的源码编译通不过;请问需要包含什么头文件啊?我把</P>
<P>#include &lt;Windows.h&gt; </P>
<P>#include &lt;setupapi.h&gt; </P>
<P>加上了,再把Win2000DDk装上,但好象即使加上里面的一些头文件也还是编译通不过,请问还需怎么做?可否把源码发给我?谢谢!E-mail:vfengb@126.com.</P>

huhuyo 发表于 2005-10-19 21:32:55

<P>你还需要加上下面几个头文件.和hid.lib.</P><P>#include "hidsdi.h" </P><P>#include &lt;regstr.h&gt;
#include &lt;winbase.h&gt;</P>

vfengb 发表于 2005-10-20 06:04:45

<P>还是不行啊,我拷屏发给你了(huhuyo@163.com),附上源码,麻烦你帮我看看。</P><P>另外,这段代码可以把U盘安全的删除,但也把USB鼠标删除了,请问有没有办法只把U盘删除呢?如果U盘插上时应该怎么检测到,可以知道刚插上的U盘盘符吗?因为我还想往优盘里考几个文件。(我的程序的目的是,插上优盘系统自动检测到,把指定的几个文件拷贝到优盘,再把优盘安全删除。这个涉及到驱动开发部分,以前没做过还请多多指教!如果能发给我几个例子就更好了,再次感谢!)</P>

huhuyo 发表于 2005-10-21 21:42:05

如果要判断是什么USB设备插入,那需要知道该设备的的设备ID,与厂商ID等信息.

vfengb 发表于 2005-10-18 21:42:05

还有点小问题就是,“Undefined symbol '_GUID_CLASS_USB_DEVICE' reference in TestUSB.c”这个错误还是存在,如果这个参数变为NULL,的话没有错误提示,但执行目的达不到,其他的几个错误只需要把setupapi.lib加到工程立即刻,但对于这个错误怎么解决啊?谢谢,盼复!!!

huhuyo 发表于 2005-10-19 04:49:14

<P>增加以下宏定义语句.</P><P>#define GUID_CLASS_USB_DEVICE         GUID_DEVINTERFACE_USB_DEVICE</P>

vfengb 发表于 2005-10-19 06:24:41

<P>我增加了如下的定义(用guidgen.exe生成的):</P><P>// {9A8BED8C-2AC0-41d2-AFBB-A21ABE6CC6D3}
DEFINE_GUID(GUID_DEVINTERFACE_USB_DEVICE,0x9a8bed8c, 0x2ac0, 0x41d2, 0xaf, 0xbb, 0xa2, 0x1a, 0xbe, 0x6c, 0xc6, 0xd3);</P><P>#define GUID_CLASS_USB_DEVICE         GUID_DEVINTERFACE_USB_DEVICE</P><P>但还是提示</P><P>Undefined symbol '_GUID_DEVINTERFACE_USB_DEVICE' Referenced in "TestUsb.c"</P><P>是不是需要增加什么Lib文件啊?我已经增加了cfgmgr32.lib 和setupapi.lib.</P><P>谢谢!</P>

vfengb 发表于 2005-10-18 07:43:48

<P>增加如下头文件:</P><P>#include &lt;Windows.h&gt;
#include &lt;usbioctl.h&gt;
#include &lt;setupapi.h&gt;
#include &lt;cfgmgr32.h&gt; </P><P>提示 错误如下:</P><P>“Undefined symbol '_GUID_CLASS_USB_DEVICE' reference in TestUSB.c”</P><P>“Undefined symbol '_CM_Get_DevNode_Status ' reference in TestUSB.c”</P><P>“Undefined symbol '_SetupDiEnumDeviceInfo' reference in TestUSB.c”</P><P>“Undefined symbol '_SetupDiDestroyDeviceInfoList' reference in TestUSB.c”</P><P>“Undefined symbol '_CM_Request_Device_Eject' reference in TestUSB.c”</P>

vfengb 发表于 2005-10-18 08:31:03

不好意思,已经解决了,不过还是谢谢!
页: [1]
查看完整版本: 咨询 huhuyo,如何用CVI编程实现关断U盘