윈 도 우 램디스크/VHD 식별 여부는 SetupDI API를 이용하면 됩니다
2016.04.12 20:15
Ram Disk 도 soft/hard link 가 됩니다.
따라서 램디스크인지 아닌지를 알아 내려면 Device Driver Class Installer를 구현할 때 많이 사용하는 SetupDI Windows API를 이용해서
램디스크의 Parent 디바이스가 PCI, USB 등의 실제 Bus Enumerator 인지 아닌지를 식별해서 램디스크인지 아닌지를 알아 내야 합니다.
가상디스크의 경우에는. 이를테면 어떤 드라이브가 VHD를 이용해서 마운트 되어 있다고 할 때, 이 드라이브가 VHD로 마운트 되어있는지 아닌지를
알아내는 방법은 SetupDI API를 이용해서 Device의 Hardware ID에 "Msft____Virtual_Disk____" 라는 문자열을 갖고있는지 아닌지를 통해서 알아 낼 수
있습니다.
VHD의 경우 "Msft____Virtual_Disk____" 이 포함된 문자열을 디바이스 인스턴스 Hardware ID로 내부적으로 사용 합니다.
VHD 말고 다른 가상디스크들은 "Arsenal_________Virtual_", "KernSafeVirtual_________", "VMware__VMware_Virtual_S" 등을 Hardware ID로 사용합니다.
USB 디스크의 경우는 예를들어서
새로텍의 USB 3.0 UASP 프로토콜 지원모델 처럼 어떤 USB 3.0 Disk가 UASP 를 지원하는지 아닌지를 알아내는 것은
Parent Device의 Bus Enumerator Name이 "UASPSTOR"으로 나오는지를 확인하면 됩니다. ASUS 메인보드 처럼 USB 3.0 Host Controller 용 디바이스 드라이버를 따로 제공하는 경우에는 UASP 프로토콜 지원 장치의 Parent Device의 Bus Enumerator Name이 "ASUSSTPT"으로 나올 수도 있습니다.
USB 포트에 물려있는 디바이스가 3.0 속도로 동작하고 있는지, 아님 2.0 속도로 동작하고 있는지도 SetupDI API를 이용해서 Root Hub 디바이스 ID를 알아 낸 후 DeviceIoControl API에 파라미터를 전달해서 알아 낼 수 있습니다. API 에 대한 구체적인 내용은 MSDN 문서를 참고하세요.
댓글 [1]
-
왕초보 2016.04.12 20:39
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
63124 | 윈 도 우| Windows 7 AHCI mode 사용 [10] | keywest | 1350 | 04-14 |
63123 | 윈 도 우| 부팅이 안됩니다 ㅠ.ㅠ [3] | brucex | 808 | 04-14 |
63122 | 윈 도 우| Windows 10 Korean IME Deleted [1] | 구뚜 | 1002 | 04-14 |
63121 | 윈 도 우| 강제 로그오프 관련 문의 [1] | red | 996 | 04-14 |
63120 | 윈 도 우| PE에 관한 초보적인 질문 입니다. [9] | 북학인 | 1015 | 04-14 |
63119 | 소프트웨어| art teknika console 프로그램 질문 드립니다. | MrSUNG | 602 | 04-14 |
63118 | 기 타| 바이두 가입방법이요 | 虎視 | 1481 | 04-14 |
63117 | 기 타| 360 프록시 안쓰고 속도 올리는법 아시는분 [9] | 얼음심장 | 881 | 04-14 |
63116 | 윈 도 우| PE 부팅시 특정프로그램(복구프로그램)만 실행될 수 있게 ... [7] | 황당무계 | 1325 | 04-13 |
63115 | 윈 도 우| vhd로 된 운영체제에서 버박,윈빌더 실행오류 납니다. [3] | 서기다 | 719 | 04-13 |
63114 | 하드웨어| 메인보드 교체시 발생하는 에러질문입니다 [7] | 배추장사 | 970 | 04-13 |
63113 | 윈 도 우| VHD사용시 SDD가 필수인가요. [5] | 뷰리풀투데 | 961 | 04-13 |
63112 | 윈 도 우| 8x86V2c 수정중 Classic Shell 수정 [22] | 개가똥을참 | 907 | 04-13 |
63111 | 윈 도 우| 모니터가 10분 뒤에 절전모드 안들어가게 하고 싶은데 [4] | 비르사 | 1153 | 04-13 |
63110 | 윈 도 우| WIM파일로 된 윈도우10PE를 USB로 부팅되게 어찌 하는지요? [3] | 알라뷰 | 1274 | 04-13 |
63109 | 윈 도 우| 윈도우10 일정에 일정(ical) 추가 방법 알려주세요 ㅠㅠ | neonchang | 1045 | 04-13 |
63108 | 기 타| 윈도우10 사용중인데요 [2] | 대륙의별 | 838 | 04-13 |
63107 | 소프트웨어| easybcd 와 bootice 같은 용도인가요? [4] | 1992 | 1248 | 04-13 |
63106 | 기 타| 바이두 다운 받을때 [1] | DaBin | 1150 | 04-13 |
63105 | 하드웨어| USB 타입 무선랜카드 추천좀 부탁드립니다,,, [1] | Zz타락천사z | 1042 | 04-13 |
와!! 감사합니다...
어려운 용어들이 있지만...AP를 이용하여서 구분하는 방법이 있다니..놀랍습니다
귀한 정보 감사합니다.
복 많이 받으십시요