我在做读取硬盘序列号的程序,不在VC里,所以很麻烦。
微软的例子里面是
#include <windows.h>
#include <winioctl.h>请手边有VC的老大帮我看看这个数是多少。
IOCTL_CHANGE_GET_PRODUCT_DATA

解决方案 »

  1.   

    FILE_SHARE_READ 
    FILE_SHARE_WRITE
    的值也帮忙看看。
      

  2.   

    更正一下,是
    IOCTL_CHANGER_GET_PRODUCT_DATA
      

  3.   

    #define FILE_SHARE_READ             (0x00000001) /* from WINNT.H */
    #define FILE_SHARE_WRITE            (0x00000002) /* from WINNT.H */
    这个不知道
    IOCTL_CHANGE_GET_PRODUCT_DATA
      

  4.   

    bager(柏哥),请看看ioctl.inc的内容。
    是:
    IOCTL_CHANGER_GET_PRODUCT_DATA
    谢谢了。我手头没有VC
      

  5.   

    #define FILE_SHARE_READ             (0x00000001) /* from WINNT.H */
    #define FILE_SHARE_WRITE            (0x00000002) /* from WINNT.H */
    #define IOCTL_CHANGER_GET_PRODUCT_DATA       CTL_CODE(IOCTL_CHANGER_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS)
    在我的机子上是运行是 0x00304008
      

  6.   

    #define IOCTL_CHANGER_GET_PRODUCT_DATA       CTL_CODE(IOCTL_CHANGER_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS)
      

  7.   

    #define FILE_DEVICE_CHANGER             0x00000030
    #define METHOD_BUFFERED                 0
    //ntddchgr.h
    #define IOCTL_CHANGER_BASE                FILE_DEVICE_CHANGER
    #define IOCTL_CHANGER_GET_PRODUCT_DATA CTL_CODE(IOCTL_CHANGER_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS)