Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
NotifyStableUnicastIpAddressTable işlevi, yerel bilgisayardaki kararlı tek noktaya yayın IP adresi tablosunu alır.
Sözdizimi
NETIOAPI_API NotifyStableUnicastIpAddressTable(
_In_ ADDRESS_FAMILY Family,
_Out_ PMIB_UNICASTIPADDRESS_TABLE *Table,
_In_ PSTABLE_UNICAST_IPADDRESS_TABLE_CALLBACK CallerCallback,
_In_ PVOID CallerContext,
_Inout_ HANDLE *NotificationHandle
);
Parametre
Aile [in]
Alınacak adres ailesi.Adres ailesi için olası değerler Winsock2.h üst bilgi dosyasında listelenir. AF_ adres ailesi ve PF_ protokol ailesi sabitlerinin değerlerinin aynı olduğunu unutmayın (örneğin, AF_INET ve PF_INET), böylece sabitlerden birini kullanabilirsiniz.
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde, Family parametresinin olası değerleri Ws2def.h üst bilgi dosyasında tanımlanır. Ws2def.h üst bilgi dosyasının Netioapi.h dosyasına otomatik olarak eklendiğini ve Ws2def.h dosyasını hiçbir zaman doğrudan kullanmamalısınız.
Şu anda adres ailesi için aşağıdaki değerler desteklenmektedir:
AF_INET
IPv4 adres ailesi. Bu değer belirtildiğinde işlev, yalnızca IPv4 girdilerini içeren kararlı tek noktaya yayın IP adresi tablosunu alır.AF_INET6
IPv6 adres ailesi. Bu değer belirtildiğinde işlev, yalnızca IPv6 girdilerini içeren kararlı tek noktaya yayın IP adresi tablosunu alır.AF_UNSPEC
Adres ailesi belirtilmemiş. Bu değer belirtildiğinde işlev, hem IPv4 hem de IPv6 girdilerini içeren kararlı tek noktaya yayın IP adresi tablosunu alır.
Tablo [out]
MIB_UNICASTIPADDRESS_TABLE yapısının işaretçisi. NotifyStableUnicastIpAddressTable başarılı olduğunda, bu parametre yerel bilgisayardaki kararlı tek noktaya yayın IP adresi tablosunu döndürür.NotifyStableUnicastIpAddressTable G/Ç isteğinin beklemede olduğunu belirten ERROR_IO_PENDING döndürdüğünde, kararlı tek noktaya yayın IP adresi tablosu CallerCallback parametresindeki işleve döndürülür.
CallerCallback [in]
Kararlı tek noktaya yayın IP adresi tablosuyla çağrılacak işlevin işaretçisi. NotifyStableUnicastIpAddressTable ERROR_IO_PENDING döndürdüğünde bu işlev çağrılır ve bu da G/Ç isteğinin beklemede olduğunu gösterir.CallerContext [in]
Kararlı tek noktaya yayın IP adresi tablosu kullanılabilir olduğunda CallerCallback parametresinde belirtilen geri çağırma işlevine geçirilen kullanıcı bağlamı.NotificationHandle [in, out]
Sürücünüzün kararlı tek noktaya yayın IP adresi tablosunu alma isteğini iptal etmek için kullanabileceği bir tanıtıcı döndürmek için kullanılan işaretçi. bu parametre, NotifyStableUnicastIpAddressTable döndürülen değerin ERROR_IO_PENDING olması G/Ç isteğinin beklemede olduğunu gösterir.
Dönüş değeri
NotifyStableUnicastIpAddressTable STATUS_SUCCESS döndürür ve işlev hemen başarılı olursa Tablo parametresinde kararlı tek noktaya yayın IP tablosu döndürülür.
G/Ç isteği bekliyorsa işlev ERROR_IO_PENDING döndürür ve G/Ç isteği kararlı tek noktaya yayın IP adresi tablosuyla tamamlandığında CallerCallback parametresinin işaretdiği işlev çağrılır.
İşlev başarısız olursa NotifyStableUnicastIpAddressTable aşağıdaki hata kodlarından birini döndürür:
| İade kodu | Açıklama |
|---|---|
| ERROR_INVALID_HANDLE | Geçersiz tanıtıcıyla karşılaşıldığında bir iç hata oluştu. |
| STATUS_INVALID_PARAMETER | İşleve geçersiz bir parametre geçirildi. Tablo parametresi NULL işaretçisi, NotificationHandle parametresi NULL işaretçisiyse veya Family parametresi AF_INET, AF_INET6 veya AF_UNSPEC değilse bu hata döndürülür. |
| STATUS_NOT_ENOUGH_MEMORY | Bellek yetersizdi. |
| Diğer | Döndürülen hatanın ileti dizesini almak için FormatMessage işlevini kullanın. |
Açıklamalar
İsteğe bağlı arama adresleri dışında tüm tek noktaya yayın IP adresleri, yalnızca tercih edilen durumdaysa kararlı olarak kabul edilir. Normal bir tek noktaya yayın IP adresi girişi için, bu durum ipdadstatepreferred olarak ayarlanmış IP adresi için MIB_UNICASTIPADDRESS_ROWDadState üyesine karşılık gelir. İsteğe bağlı her arayarak bağlanma adresi kendi kararlılık ölçümünü tanımlar. Şu anda NotifyStableUnicastIpAddressTable işlevinin göz önünde bulundurduğunu tek isteğe bağlı arama adresi, Teredo istemcisinin yerel bilgisayarda kullandığı tek noktaya yayın IP adresidir.
Sürücünüz Family parametresini AF_INET, AF_INET6 veya AF_UNSPEC olarak ayarlamalıdır.
NotifyStableUnicastIpAddressTable başarılı olduğunda ve STATUS_SUCCESS döndürdüğünde, Tablo parametresi yerel bilgisayardaki kararlı tek noktaya yayın IP adresi tablosunu döndürür.
NotifyStableUnicastIpAddressTable G/Ç isteğinin beklemede olduğunu belirten ERROR_IO_PENDING döndürdüğünde, kararlı tek noktaya yayın IP adresi tablosu CallerCallback parametresindeki işleve döndürülür.
Teredo'nın kullandığı tek noktaya yayın IP adresi yerel bilgisayarda kullanılabiliyorsa ancak kararlı (nitelikli) durumda değilse NotifyStableUnicastIpAddressTable ERROR_IO_PENDING döndürür ve kararlı tek noktaya yayın IP adresi tablosu sonunda CallerCallback parametresindeki işlevi çağrılarak döndürülür. Teredo adresi kullanılamıyorsa veya kararlı durumdaysa ve diğer tek noktaya yayın IP adresleri kararlı durumdaysa, CallerCallback parametresindeki işlev hiçbir zaman çağrılmaz.
CallerCallback parametresinde belirtilen geri çağırma işlevi, VOID türünde bir işlev olarak tanımlanmalıdır. Geri çağırma işlevine geçirilen parametreler aşağıdakileri içerir.
| Parametre | Açıklama |
|---|---|
IN PVOID CallerContext |
Sürücüyü bildirimler için kaydederken NotifyStableUnicastIpAddressTable işlevine geçirilen CallerContext parametresi. |
IN PMIB_UNICASTIPADDRESS_TABLE AddressTable |
Yerel bilgisayardaki kararlı tek noktaya yayın IP adresi tablosunu içeren bir MIB_UNICASTIPADDRESS_TABLE yapısının işaretçisi. |
NotifyStableUnicastIpAddressTable işlevi öncelikle Teredo istemcisini kullanan sürücüler tarafından kullanılır.
Geri çağırma tamamlandıktan sonra bildirimi iptal etmek için NotifyStableUnicastIpAddressTable döndüren NotificationHandle parametresi ni geçirerek CancelMibChangeNotify2 işlevini çağırın.
Gereksinim -leri
Hedef platform |
Evrensel |
Sürüm |
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde kullanılabilir. |
Üstbilgi |
Netioapi.h (Netioapi.h içerir) |
Kütüphane |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |