Ответ зависит от того, используете ли вы OS X 10.5 или 10.6. В 10.6 старый AliasManger был заменен данными закладок NSURL
. Для создания псевдонима, учитывая NSURL
экземпляр:
NSURL *url = [NSURL fileURLWithPath:pathToAliasTarget];
NSError *err = nil;
NSData *bookmarkData = [url bookmarkDataWithOptions: NSURLBookmarkCreationSuitableForBookmarkFile includingResourceValuesForKeys:nil relativeToURL:nil error:&err];
if(bookmarkData == nil) {
//handle NSError in err
} else {
if(![NSURL writeBookmarkData:bookmarkData toURL:aliasFileURL options:NSURLBookmarkCreationSuitableForBookmarkFile error:&err]) {
//handle NSError in err
}
}
Как отмечает Питер Хоси, данные закладок, написанные с использованием NSURL
API, не совместимы с подпрограммами AliasManager. Если вы должны поддерживать OS X <10.6, вам придется напрямую использовать API Carbon AliasManager или одну из оболочек Objective-C. Мне нравится Вольф Ренстч филиал <code>BDAlias, доступны здесь .