2013-11-15 4 views
0

C++ Builder 코드를 사용하여 다음 두 폴더를 구별 할 수있는 방법이 있습니까? USB 플래시 드라이브의USB 폴더 및 SD 카드 폴더

  1. 폴더 SD 카드 (SDHC)의
  2. 폴더

나는 C++ 빌더 XE4를 사용하고 있습니다. C++ Builder를 사용하면 위의 두 폴더를 구분할 수있는 소프트웨어를 만들 수 있습니다.

아래에서이 문제에 대해 설명합니다.

저는 USB 커넥터와 SD 카드 커넥터가있는 노트북 컴퓨터를 가지고 있습니다. SD 카드의 폴더에 파일을 저장하고 싶습니다. 그러나 SD 카드가 마운트되어 있지 않은 경우, 다른 한편으로는 일부 USB 플래시 드라이브가 마운트되어 있어도 실수로 USB 플래시 드라이브에 파일을 쓰지 않아야합니다. 그래서 SD 카드와 USB 플래시 드라이브 폴더를 구별 (인식)하고 싶습니다.

나는 인터넷을 통해 혼자서 더 조사하기 위해 이들에 대한 몇 가지 키워드를 알고 싶습니다.

답변

1

를 사용하여 WMI 쿼리 :

SELECT DeviceID FROM WIN32_DiskDrive 

이 쿼리는 당신에게 제공하는 모든 HardDisks :

SELECT DeviceID FROM WIN32_DiskDrive where interfacetype='IDE' 

이 쿼리는 모든 USB를 제공

이 쿼리는 당신에게 모든 드라이브 (2GByte의를 포함)를 제공합니다 드라이브 (sdcards를 포함하지 않음) :

SELECT DeviceID FROM WIN32_DiskDrive where interfacetype='USB' 

그런 다음 DeviceID ("\\. \ PHYSICALDRIVE1") 속성을 새 질문의 대상이 될 수있는 드라이브 문자 (예 : D : \)에 연결해야합니다.

+0

정보를 제공해 주셔서 감사합니다. 나는 당신의 제안에 따라 코드를 만들 것이다. – sevenOfNine