سؤال

في تفضيلات شبكة النظام ، هناك بعض أسماء الموقع. كيف تحصل على اسم موقع الشبكة الحالي أو النشط وقائمة جميع مواقع الشبكة؟
أعتقد أن SystemConfiguration.framework يدعم هذا ، لكنني لم أحصل على أي واجهة برمجة التطبيقات التي يجب استخدامها بالضبط.

شكرا مقدما على إجابتك.

يعتبر
ديفارا غودا

هل كانت مفيدة؟

المحلول

يمكنك استخدام SCPreferencesCreate للحصول على التفضيلات ، إذن SCNetworkSetCopyAll للحصول على مواقع الشبكة فقط. SCNetworkSetGetName سوف تحصل على اسم الموقع.

SCPreferencesRef prefs = SCPreferencesCreate(NULL, @"SystemConfiguration", NULL);
NSArray *locations = (NSArray *)SCNetworkSetCopyAll(prefs);
for (id item in locations) {
    NSString *name = (NSString *)SCNetworkSetGetName((SCNetworkSetRef)item);
    ...
}
CFRelease(locations);
CFRelease(prefs);

اقرأ "إرشادات برمجة تكوين النظام" للمزيد من.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top