2016-06-02 5 views
0

WinAPI를 호출하는 코드, 특히 DeviceIoControl에 대한 작업을하고 있습니다.IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 상수 값

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX을 =

나를 정확하게 USB 프로토콜을 검색 할 수하는 것이 중요하지만 0x220448 (즉 Usb11, USB20 또는 Usb30) 및 위해 : 그것은 다음과 같이 다음과 같은 제어 코드입니다 IoControlCode 소요 IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2를 호출해야합니다. DeviceIoControl에 전달해야하는 상수 값이 무엇인지 알 수 없습니다. 나는 Constants 섹션 아래 pinvoke.net을 살펴 봤고이 new-ish 호출과 그에 수반되는 구조체에 대한 문서가 없다.

누가이 const 값을 찾을 수 있는지에 대해 누군가를 교육시킬 수 있습니까?

감사합니다. 윈도우 키트에서 usbioctl.h 및 usbiodef.h에서

답변

1

당신은 비주얼 스튜디오를 열 거시 CTL_CODE을 헤더를 통해 파고 및 디코딩 기분하지 않는 경우, C++ 콘솔 응용 프로그램을 만들고 다음과 같이하십시오.

#include <Windows.h> 
#include <iostream> 
#include <usbioctl.h> 

using namespace std; 

int main() 
{ 
    cout << "0x" << hex << IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 << endl; 
    // Output: 0x22045c 
    return 0; 
} 

게으름을 피하십시오. 컴파일러가 그 값이 무엇인지 말해 보자.

0

공유 폴더를 \ 포함 :

#define IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 \ 
           CTL_CODE(FILE_DEVICE_USB, \ 
            USB_GET_NODE_CONNECTION_INFORMATION_EX_V2, \ 
            METHOD_BUFFERED, \ 
            FILE_ANY_ACCESS) 

#define USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 279 

#define FILE_DEVICE_USBEX    0x00000049