В моем приложении работает версия Aquatic Prime для Objective-C. Когда я заменяю класс Objective C на функции CoreFoundation, я могу проверить файл лицензии один раз, но последующие попытки проверки в других частях моего кода (с использованием того же блока кода) не удаются. Зачем?
APSetKey(key);
NSString *appSupportFolder = [(MyApp_AppDelegate *)[[NSApplication sharedApplication] delegate] applicationSupportFolder];
NSString *licFile = [appSupportFolder stringByAppendingPathComponent:@"license.myapp-license"];
CFURLRef licURL = CFURLCreateWithFileSystemPath(kCFAllocatorDefault, (CFStringRef)licFile, kCFURLPOSIXPathStyle, false);
CFDictionaryRef licenseDictionary = APCreateDictionaryForLicenseFile(licURL);
if (licenseDictionary) {
// do something
CFRelease(licenseDictionary);
}
CFRelease(key);
CFRelease(licURL);
Я использую XCode 4.1 на Lion, но компилирую против 10.6 64 бит.