サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
GPT-4o
ohyajapan.hatenadiary.org
以前、PhotoCollectorについてちょっと書いた時に、RemovableStorageMonitor.csに少し触れた。これについて、もうちょっと技術的な話を書いておこうと思う。 ※注この話はWindowsプラットフォーム限定である。あと、WindowsでもOSが違うと挙動が違う可能性がある。私はWindows XP HomeとWindows XP Professionalでしか確認していない。 .NET Framework 3.5で(USBメモリ等の)リムーバブルストレージの一覧を取得したかったら、DriveInfo.GetDrivesを使ってドライブの一覧を取得して、その中からDriveTypeがRemovableなものを選べば良い。 var drives = DriveInfo.GetDrives().Where(d => d.DriveType == DriveType.R
以前、PhotoCollectorについてちょっと書いた時に、RemovableStorageMonitor.csに少し触れた。これについて、もうちょっと技術的な話を書いておこうと思う。 続きを読む その1ではリムーバブルメディアの着脱を検知する方法を説明した。この方法はUSBメモリなどではうまく機能するが、多数のメディアの読み書きに対応したメディアリーダ(例: google:image:USB メディア リーダー)では問題が起こるかもしれない。 例えば、私が使っているBuffaloのメディアリーダでは、リーダーをUSBポートに接続した時点で6つぐらいのドライブが認識される。同時にWindowメッセージ(WM_DEVICECHANGE)もドライブの数だけ飛ぶ。そして、実際にSDカードなどのメディアをメディアリーダーにセットした時には、何も検知できない。そういう場合にどうするかというのがここ
その1ではリムーバブルメディアの着脱を検知する方法を説明した。この方法はUSBメモリなどではうまく機能するが、多数のメディアの読み書きに対応したメディアリーダ(例: google:image:USB メディア リーダー)では問題が起こるかもしれない。 例えば、私が使っているBuffaloのメディアリーダでは、リーダーをUSBポートに接続した時点で6つぐらいのドライブが認識される。同時にWindowメッセージ(WM_DEVICECHANGE)もドライブの数だけ飛ぶ。そして、実際にSDカードなどのメディアをメディアリーダーにセットした時には、何も検知できない。そういう場合にどうするかというのがここで説明する内容である。 やり方はその1の方法と似ていて、Windowメッセージを使う。今度使うのは次のメッセージ。 #define WM_SHNOTIFY 0x0401 これを受け取るのにウィンドウが
このページを最初にブックマークしてみませんか?
『ohyajapan.hatenadiary.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く