Mac OS Xでマウントされたローカルボリュームのリストを取得する必要があります。以前は、CocoaクラスNSWorkspaceには、そのようなボリュームのマウントポイントの配列を取得するためのmountedLocalVolumePathsメソッドがありました。Lion以降、これは非推奨になりました。代わりに何を使用すべきかについてのヒントはドキュメントにありません。
この情報を提供する私が見つけた他の唯一のApple固有のAPIは、CoreServices.frameworkのFSGetVolumeInfo関数です。これはkFSInvalidVolumeRefNum、ボリュームパラメータにパスし、volumeIndexに1..Nを渡すと、マウントされたボリュームを列挙します。これは、volumeName出力パラメーターを介してボリューム名を(としてHFSUniStr255)返し、 rootDirectory出力パラメーターを介してマウントポイントをとして返しFSRefます。これは、を使用してURLに変換できますCFURLCreateFromFSRef()。
これは少し複雑で、不必要に低レベルのようです。
BSDレベルの関数もあり、getfsstat()どちらgetmntinfo()も構造体の配列を出力しstatfsます。APIはコアサービスバージョンよりも賢いようです。
代わりに使用する必要があるより高いレベルの代替品はありますか?