Mae chwiliad dirprwy CFNetwork yn API C y gellir ei ddefnyddio'n uniongyrchol o C++; mae trosi popeth yn wrthrychau Objective-C yn ddewisol. Galwch CFNetworkCopyProxiesForURL gyda'r CFURL targed a gosodiadau o CFNetworkCopySystemProxySettings i gael geiriaduron dirprwy mewn trefn.

GwerthPerchnogaeth
Gwrthrychau a grëwyd neu a ddychwelwyd gan Copy, gan gynnwys llwybrau a gosodiadauYn berchen i'r galwr; rhyddhewch bob gwrthrych meddiannol nad yw'n null
Geiriadur o'r arae neu enw gwesteiwr o'r geiriadur drwy GetBenthyg; peidiwch â'i ryddhau heb fod wedi'i gadw

Ar gyfer routes dilys a mynegai o fewn ystod, gall echdynnu fod fel hyn:

CFDictionaryRef proxy = static_cast<CFDictionaryRef>(
    CFArrayGetValueAtIndex(routes, index));
CFStringRef hostname = static_cast<CFStringRef>(
    CFDictionaryGetValue(proxy, kCFProxyHostNameKey));

Darllenwch kCFProxyTypeKey cyn trin y cofnod fel pen draw. Mae ymgeiswyr uniongyrchol a chyfluniad awtomatig angen triniaeth wahanol.

Trowch enw gwesteiwr CFString a phorth CFNumber cofnod penodol tra bo'r perchennog yn fyw. Yna gall gwerthoedd C++ a echdynnwyd fynd i mewn i gyfluniad y cludydd. I gadw'r CFString ei hun y tu hwnt i'r canlyniad, cadwch ef yn gyntaf ac wedyn cydbwyswch hynny â CFRelease; fel arall, gorffennwch cyn rhyddhau'r perchennog sy'n ei gynnwys.

Rhyddhewch yr URL targed a grëwyd/copïwyd, y geiriadur gosodiadau a'r arae canlyniadau wrth lanhau, gan ddefnyddio gwarchodwr cwmpas os yw'n briodol. Nid yw math CFStringRef newidyn ar ei ben ei hun yn rhoi perchnogaeth dros ganlyniad Get.

Erthyglau cysylltiedig