다음을 통해 공유


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 포함)

추가 정보

디스크 관리 구조

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_ADAPTER_DESCRIPTOR

STORAGE_DESCRIPTOR_HEADER

STORAGE_DEVICE_DESCRIPTOR

STORAGE_DEVICE_ID_DESCRIPTOR