我用VC++环境下可以编译,但在纯C环境下编译就 error C2065: GetUsbDeviceFileName  undeclared identifier 
在纯C环境下也#include <setupapi.h>怎么解决? 我在用纯C环境下写动态库。 谢谢!

解决方案 »

  1.   

    那你纯C不纯C的,能include这个头文件不? 
    至少编译错误就是这个意思,你环境设置的问题
      

  2.   

    在 C:\Program Files\Microsoft Visual Studio\VC98\Include 中是有的啊
      

  3.   

    GetUsbDeviceFileName是你自己写的函数吧?没听说过有这样的API。
      

  4.   

    http://blog.csdn.net/skdev/archive/2008/06/27/2591893.aspx看来确实是自己写的。
      

  5.   

    不是,是在 C:\Program Files\Microsoft Visual Studio\VC98\Include\setupapi.h 定义的
      

  6.   

    好像都没有在点子上, 应该是与环境有关,GetUsbDeviceFileName 应该是与写驱动有关, 我想我不装DDK可不可以也调用这个函数
      

  7.   

    如果你的VC里面确实有(因为我的没有,MSDN中也没有),看一下该函数前面有什么条件编译,在包含该头文件前添加所需的定义。或者直接把函数声明复制到自己的代码里面。