0

これを行う方法 - OS X でマウントされた CD の名前を見つける - のプロセスを説明したブックマークがありましたが、Mac を再フォーマットしたときにブックマークを削除しました。:P

この件について読んでみると、これがうまくいくと思います。基本的に、アプリケーションを続行する前に、特定の CD がマウントされているかどうかを確認する必要があります

  1. NSWorkspace へのアクセス
  2. 「checkForRemovableMedia」を実行します
  3. 「mountedRemoveableMedia」からマウントされたメディア パスの配列を取得します
  4. マウントされたメディア パスの配列を実行して、ターゲット ディスクの名前を含むものを見つけます

とにかく、これは可能な解決策として私が思いついたものです。Cocoa のこの分野で他のアイデアや知識を持っている人はいますか? 提案:)

編集: 以下のコードを作成しましたが、機能していません。NSCFStrings を含む NSCFArray を作成しますが、これは私が読み上げて実行すべきではありません。

 NSArray *mountedItems = [[NSWorkspace sharedWorkspace] mountedRemovableMedia];

 int count = [mountedItems count];
 int i = 0;

    for (i = 0; i < count; i++) {
         //line is not printing.  contains NSCFArray and NSCFStrings
            [NSLog print:[[mountedItems objectAtIndex:i] stringValue]];
 }
4

1 に答える 1

1

わかりました、だから私はばかです。

[[NSWorkspace sharedWorkspace] checkForRemovableMedia];
NSArray *mountedItems = [[NSWorkspace sharedWorkspace] mountedRemovableMedia];

NSUInteger count = [mountedItems count];
NSUInteger i = 0;
for (i = 0; i < count; i++) {
    NSString *tempString = [mountedItems objectAtIndex:i];
    NSLog(@"%@",tempString);
}

私は NSLog を間違って使用しただけでなく、おそらく文字列に対して 'stringValue' を呼び出すことが冗長であることにまったく気づいていませんでした。また、コードが壊れた原因も。:P

これで動作します。念のため、「checkForRemovableMedia」も追加しました。

于 2010-06-05T01:15:45.100 に答える