2015-04-12 123 views

回答

2

是的,你想要KextManager API。特別是,KextManagerLoadKextWithIdentifier()可能是您希望用來加載安裝的kext的函數,而如果要加載不在/ System/Library/Extensions或/ Library/Extensions中的kext,則可能需要使用KextManagerLoadKextWithURL()。在一個.app包中。

0
CFStringRef km_path = CFStringCreateWithCString(kCFAllocatorDefault, "/Library/Extensions/KauthORama.kext", 
                kCFStringEncodingUTF8); 
CFURLRef km_url = CFURLCreateWithFileSystemPath(kCFAllocatorDefault, km_path, 
              kCFURLPOSIXPathStyle, true); 
OSReturn status = KextManagerLoadKextWithURL(km_url, NULL); 
if (status == kOSReturnSuccess){ 
     syslog(LOG_NOTICE, "Loaded!"); 
    }else{ 
     syslog(LOG_NOTICE, "Lodaed error: %d", errno); 
    }