皆さん、
ボリュームをアンマウントできるはずの小さなアプリを開発しています。
現在、ボリュームがマウントできないかどうかを判断するために、次のコードを使用しています。
BOOL isRemovable, isWritable, isUnmountable;
NSString *description, *type;
BOOL succ = [ws getFileSystemInfoForPath:[itemInfo objectForKey:@"path"]
isRemovable:&isRemovable
isWritable:&isWritable
isUnmountable:&isUnmountable
description:&description
type:&type];
問題は、CDやDVDなどの物理的に取り外し可能なボリュームのみがisUnmountable=YESフラグを取得することです。USBデバイスはマウントできませんが、マウントできません。
あなたたちはそのための解決策を持っていますか?
- - 編集
FATフォーマットの別のUSBスティックで試してみました。Macに2台のUSBハードディスクを接続しました。これらはFinderまたはディスクユーティリティからマウントできません。これらはHFS形式です。上記のコードを使用する出力を作成しました。
/、hfs、アンマウント可能:NO、リムーバブル:NO
/ Volumes / Elephant、hfs、アンマウント可能:NO、リムーバブル:NO
/ Volumes / Time Machine、hfs、アンマウント可能:NO、リムーバブル:NO
/ Volumes / USBSTICK、msdos、アンマウント可能:YES 、取り外し可能:はい
デバイスがFATまたはMSDOS形式の場合にのみメソッドがYESを返すようです。他の2つ(Elephant、Time Machine)は、USB経由で接続され、取り外しと取り外しが必要なボリュームであるため、これは奇妙なことです。その情報を取得する別の方法はありますか、またはコードで何か間違ったことをしましたか?
-
よろしく
マルコ