STORAGE_DEVICE_DESCRIPTOR 구조체(winioctl.h)
IOCTL_STORAGE_QUERY_PROPERTY 제어 코드와 함께 사용하여 디바이스에 대한 스토리지 디바이스 설명자 데이터를 검색합니다.
구문
typedef struct _STORAGE_DEVICE_DESCRIPTOR {
DWORD Version;
DWORD Size;
BYTE DeviceType;
BYTE DeviceTypeModifier;
BOOLEAN RemovableMedia;
BOOLEAN CommandQueueing;
DWORD VendorIdOffset;
DWORD ProductIdOffset;
DWORD ProductRevisionOffset;
DWORD SerialNumberOffset;
STORAGE_BUS_TYPE BusType;
DWORD RawPropertiesLength;
BYTE RawDeviceProperties[1];
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
멤버
Version
이 구조체의 크기(바이트)를 포함합니다. 멤버가 구조체에 추가되면 이 멤버의 값이 변경됩니다.
Size
공급업체 ID, 제품 ID, 제품 수정 버전, 디바이스 일련 번호 문자열 및 구조에 추가된 버스별 데이터를 포함할 수 있는 설명자의 총 크기(바이트)를 지정합니다.
DeviceType
SCSI(Small Computer Systems Interface) 사양에 정의된 디바이스 유형을 지정합니다.
DeviceTypeModifier
SCSI 사양에 정의된 디바이스 유형 한정자(있는 경우)를 지정합니다. 디바이스 유형 한정자가 없는 경우 이 멤버는 0입니다.
RemovableMedia
디바이스의 미디어(있는 경우)가 이동식인 경우 TRUE 를 나타냅니다. 디바이스에 미디어가 없으면 이 멤버를 무시해야 합니다. FALSE이면 디바이스의 미디어를 이동식으로 제거할 수 없습니다.
CommandQueueing
디바이스가 여러 개의 미해결 명령(SCSI 태그가 지정된 큐 또는 해당)을 지원하는 경우 TRUE 를 나타냅니다. FALSE인 경우 디바이스는 SCSI 태그가 지정된 큐 또는 이에 상응하는 큐를 지원하지 않습니다.
VendorIdOffset
구조체의 시작 부분에서 디바이스의 공급업체 ID를 포함하는 null로 끝나는 ASCII 문자열로의 바이트 오프셋을 지정합니다. 디바이스에 공급업체 ID가 없는 경우 이 멤버는 0입니다.
ProductIdOffset
구조체의 시작 부분에서 디바이스의 제품 ID를 포함하는 null로 끝나는 ASCII 문자열까지의 바이트 오프셋을 지정합니다. 디바이스에 제품 ID가 없으면 이 멤버는 0입니다.
ProductRevisionOffset
구조체의 시작 부분에서 디바이스의 제품 수정 문자열을 포함하는 null로 끝나는 ASCII 문자열까지의 바이트 오프셋을 지정합니다. 디바이스에 제품 수정 문자열이 없으면 이 멤버는 0입니다.
SerialNumberOffset
구조체의 시작 부분에서 디바이스의 일련 번호를 포함하는 null로 끝나는 ASCII 문자열로의 바이트 오프셋을 지정합니다. 디바이스에 일련 번호가 없으면 이 멤버는 0입니다.
BusType
디바이스가 연결된 버스 유형을 나타내는 STORAGE_BUS_TYPE 형식의 열거자 값을 지정합니다. 이 구조체의 끝에 있는 원시 디바이스 속성을 해석하는 데 사용해야 합니다(있는 경우).
RawPropertiesLength
이 설명자에 추가된 버스별 데이터의 바이트 수를 나타냅니다.
RawDeviceProperties[1]
버스별 속성 데이터의 첫 번째 바이트에 대한 자리 표시자 역할을 하는 길이 1의 배열을 포함합니다.
설명
애플리케이션은 출력 버퍼에 대한 STORAGE_DESCRIPTOR_HEADER구조를 전달하는 IOCTL_STORAGE_QUERY_PROPERTY 제어 코드를 실행한 다음, STORAGE_DESCRIPTOR_HEADER 구조체의 반환된 Size 멤버를 사용하여 적절한 크기의 버퍼를 할당하여 필요한 버퍼 크기를 결정할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | winioctl.h(Windows.h 포함) |