How to get a font's enabled state

If I disable a font in font book, how can I get the disabled state? I've used two core text APIs to do this, but neither of them works. Here is my code, the option kCTFontCollectionIncludeDisabledFontsOption does not work and the attribute kCTFontEnabledAttribute always return 1, is there anything wrong with my code, or is there any other valid approach?

static CFArrayRef fontDescArray;
static CFIndex fontCount = 0;
static int currentIndex = 0;

CFStringRef keys[] = {kCTFontCollectionIncludeDisabledFontsOption,kCTFontCollectionRemoveDuplicatesOption};
CFTypeRef values[] = {kCFBooleanFalse,kCFBooleanTrue};
CFIndex numValues = 2;
CFDictionaryRef options = CFDictionaryCreate((CFAllocatorRef)NULL,
                                                            (const void**)keys,
                                                            (const void**)values,
                                                            numValues,
                                                            &kCFTypeDictionaryKeyCallBacks,
                                                            &kCFTypeDictionaryValueCallBacks);
        
CTFontCollectionRef availableFonts = CTFontCollectionCreateFromAvailableFonts(options);
fontDescArray = CTFontCollectionCreateMatchingFontDescriptors(availableFonts);
fontCount = CFArrayGetCount(fontDescArray);


CTFontDescriptorRef fontDescRef = (CTFontDescriptorRef)CFArrayGetValueAtIndex(fontDescArray, currentIndex);
CFBooleanRef enabled =(CFBooleanRef)CTFontDescriptorCopyAttribute(fontDescRef,kCTFontEnabledAttribute);
Boolean result = CFBooleanGetValue(enabled);

CFRelease stuffs...
How to get a font's enabled state
 
 
Q