كيف أحصل على اسم موقع الشبكة الحالي؟
-
24-09-2019 - |
سؤال
في تفضيلات شبكة النظام ، هناك بعض أسماء الموقع. كيف تحصل على اسم موقع الشبكة الحالي أو النشط وقائمة جميع مواقع الشبكة؟
أعتقد أن 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);
اقرأ "إرشادات برمجة تكوين النظام" للمزيد من.
لا تنتمي إلى StackOverflow