मेरे मैक एप्लिकेशन से, मुझे \ Library \ ColorSync \ Profiles में एक फ़ाइल लिखनी होगी। इसके लिए, ऐप को फ़ोल्डर को लिखने के लिए व्यवस्थापक विशेषाधिकार की आवश्यकता है। आवेदन में वही प्राप्त करना संभव है? किसी भी तरह की सहायता को आभार समझेंगे।मैक एप्लिकेशन में पुस्तकालय ColorSync Profiles में फ़ाइल लिखने का विशेषाधिकार प्राप्त करना
मैं निम्नलिखित कोड के साथ अनुमति संवाद पॉप अप करने में सक्षम हूँ झलकी
NSSavePanel *tvarNSSavePanelObj = [NSSavePanel savePanel];
[tvarNSSavePanelObj setDirectoryURL:[NSURL URLWithString:@"/Library/ColorSync/Profiles"]];
__block NSString *filePathexn = nil;
[tvarNSSavePanelObj beginSheetModalForWindow:[NSApplication sharedApplication].mainWindow completionHandler:^(NSInteger tvarInt) {
if(tvarInt == NSModalResponseOK){
NSURL* tvarUrl = [tvarNSSavePanelObj URL];
NSLog(@"doSaveAs filename = %@",[tvarUrl path]);
NSString *filePath = [tvarUrl path];
filePathexn = [filePath stringByAppendingPathExtension:@"rtf"];
OSStatus status;
if(![[NSFileManager defaultManager]isWritableFileAtPath:filePath]){
NSLog(@"Not Writable at path");
AuthorizationRef authRef;
AuthorizationItem right = {kAuthorizationRightExecute, 0, NULL, 0};
AuthorizationRights rights = {1, &right};
status = AuthorizationCreate(NULL, kAuthorizationEmptyEnvironment, kAuthorizationFlagPreAuthorize, &authRef);
AuthorizationFlags authFlags = kAuthorizationFlagDefaults | kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed | kAuthorizationFlagPreAuthorize;
status = AuthorizationCopyRights(authRef, &rights, kAuthorizationEmptyEnvironment, authFlags, NULL);
}
BOOL status1 = [[NSFileManager defaultManager]createFileAtPath:filePathexn contents:nil attributes:nil];
} else if(tvarInt == NSModalResponseCancel) {
return;
} else {
NSLog(@"doSave As tvarInt not equal 1 or zero = %3ld",(long)tvarInt);
return;
}
}];
मुझे पता है कि कैसे फ़ाइल लिखने किया जा सकता है की जरूरत है। अभी भी पथ पथ पर लिखा नहीं है। क्या कोई उपकरण नाम निर्दिष्ट करने की आवश्यकता है? क्या SMJobless() के साथ यह संभव होगा? कृपया एक समाधान की सलाह दें !!
आप महत्वपूर्ण जानकारी प्रदान नहीं कर रहे हैं। –
@ElTomato मैंने कुछ संपादन किए हैं। क्या आप अब टिप्पणी कर सकते हैं? – iGo
आपका आवेदन किसके लिए लक्षित है? यदि आप मैक ऐप स्टोर के माध्यम से अपना एप्लिकेशन वितरित करना चाहते हैं, तो आपको उपयोगकर्ता को व्यवस्थापकीय प्रमाणीकरण के लिए संकेत देने की अनुमति नहीं दी जाएगी। –