2013-01-06 18 views
6

में काम नहीं कर रहा यह 10.7 में काम करता है लेकिन 10.8 में नहीं। माउंटेन शेर में काम करने के लिए मैं इसे कैसे प्राप्त करूं?खोजक में दिखाएं 10.8

-(IBAction)showTargetInFinder:(id)sender 
{ 

    NSString *linkPath = [targetField stringValue]; 
    NSWorkspace *ws = [NSWorkspace sharedWorkspace]; 
    [ws selectFile:linkPath inFileViewerRootedAtPath:nil]; 

} 
+0

आप, पेड्रो विएरा समाधान के साथ जाना चाहिए के बाद से रास्तों के बजाय यूआरएल है आम तौर पर आगे बढ़ने का तरीका, लेकिन कोशिश करने के लिए एक और चीज (अगर केवल जिज्ञासा के लिए) पथ-आधारित विधि का उपयोग 'n" ''' '' '' '' '' '' '' ''' 'के साथ फाइल व्यूअर रूट के लिए करना होगा। [प्रलेखन की व्याख्या] (http://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/Reference/Reference.html#//apple_ref/occ/instm/NSWorkspace/selectFile: inFileViewerRootedAtPath :) बल्कि पुरातन है, लेकिन यह है कि '@ "" 'अधिक उपयोगी रूट मान है। –

उत्तर

7

उपयोग इस कोड के बजाय:

NSURL *fileURL = your file URL; 
NSArray *fileURLs = [NSArray arrayWithObjects:fileURL, nil]; 
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:fileURLs]; 

यह 10.6+ पर काम करता है। यदि आप खोजक पर एक से अधिक फाइलों को दिखाना और चुनना चाहते हैं तो सरणी में अधिक NSURLs जोड़ें और आप जाने के लिए अच्छे हैं।

+0

कूल। धन्यवाद, पेड्रो। – Paul

+0

कोई समस्या नहीं! मैं खुशी से मदद कर सकता है! –

+2

वैकल्पिक रूप से, आपके लिए एक सरणी बनाने के लिए एनएसएआरएआरई पूछने के बजाय, एक सरणी का उपयोग करें: '[[NSWorkspace SharedWorkspace] activateFileViewerSelectingURLs: @ [fileURL]]' –

0

एक सैनिटी-चेक पॉइंट व्यू से: यदि उपयोगकर्ता [[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:@[ fileURL ]] कॉल को fileURL के लिए पढ़ने/देखने की अनुमति नहीं देता है तो विधि "काम नहीं" दिखाई देगी। अगर यह आपकी समस्या है (ओएस एक्स 10.10.3 के अनुसार)

निर्धारित करने के लिए, की तरह लॉग के लिए अपने कंसोल जाँच निम्नलिखित:

6/18/15 10:34:46.195 AM NameOfApp[42753]: AppleEvents failed to encode extension for /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/xxxxxxxxxxx/yyyy.zzz, err=Permission denied/13 
संबंधित मुद्दे