2011-02-05 3 views
2

C#의 IMAPI 메서드를 사용하여 삽입 된 쓰기 가능한 미디어의 미디어 유형을 쉽게 얻을 수 있습니다. 불행히도,이 방법은 내가 읽기 전용 매체를 가지고있을 때 작동하지 않습니다. 내 드라이브에 어떤 유형의 매체가 삽입되는지 파악하는 방법을 배우고 싶습니다. 어쩌면 디스크의 전체 섹터 크기를 읽음으로써 이것을 알아낼 수 있습니다.C# 응용 프로그램에서 IMAPI를 사용하지 않고 CD/DVD 드라이브에서 미디어 유형을 검색하는 방법은 무엇입니까?

아무도 도와 줄 수 있습니까?

답변

0

당신은 SHChangeNotifyRegister 기능을 호출/P를 사용할 수 있습니다

[DllImport("shell32.dll", SetLastError=true, EntryPoint="#2", CharSet=CharSet.Auto)] 
static extern UInt32 SHChangeNotifyRegister(
      IntPtr hWnd, 
      SHCNF fSources, 
      SHCNE fEvents, 
      uint wMsg, 
      int cEntries, 
      ref SHChangeNotifyEntry pFsne); 

당신은 SHCNE_MEDIAINSERTED 이벤트를 수신 할 수 있지만 지금까지 그것이 매체의 유형을 감지, 나는 정말 모르겠어요하지만 거기에 아마 그 정보를 얻기 위해 호출 할 수있는 또 다른 extern 함수.

관련 문제