2

Cocoa アプリから OS X のファイル共有を使用して共有されているネットワーク ボリュームをプログラムで検出してマウントしようとしています。私は NSNetServiceBrowser を使用して、どのサーバーがファイル共有をアドバタイズしているかを検出しています - 簡単です。

私の質問は次のステップについてです。特定のマシンで利用可能な共有をどのように見つけますか? すなわち。AFP URL が次のようになっているとします。

afp://SomeMac._afpovertcp._tcp.local/SomeVolume
afp://SomeMac._afpovertcp._tcp.local/OtherVolume

最後の URL コンポーネントを構成する共有名を見つけるにはどうすればよいですか? 確かに、これのために低レベルの AFP 呼び出しを行う必要はありません!

4

1 に答える 1

2

「低レベルのAFP呼び出し」とはFPGetSrvrParms()、ほぼ間違いなく、まさにそれが必要なことです。Bonjour(NSNetServiceBrowser)は、サービス固有の通信を実行するのではなく、サービスを検出することを目的としています。AFPはサービスです。各ボリュームは、を介して個々のHTTPURLにアクセスする場合に期待される以上の独自のサービスではありませんNSNetServiceBrowser

AFPへのCocoaインターフェースがあるとは思いません。Bill Monkは、あなたが役に立つと思うかもしれないマウントのためのいくつかの簡単なコードを書きました。

于 2010-02-16T22:46:45.583 に答える