IOControlCode Sabit listesi

Tanım

yöntemi tarafından IOControl(Int32, Byte[], Byte[]) desteklenen GÇ denetim kodlarını belirtir.

public enum class IOControlCode
public enum IOControlCode
type IOControlCode = 
Public Enum IOControlCode
Devralma
IOControlCode

Alanlar

AbsorbRouterAlert 2550136837

Bu değer Winsock 2 SIO_ABSORB_RTRALERT sabitine eşittir.

AddMulticastGroupOnInterface 2550136842

Dizini tarafından tanımlanan bir arabirimi kullanarak çok noktaya yayın grubuna katılın. Bu değer Winsock 2 SIO_INDEX_ADD_MCAST sabitine eşittir.

AddressListChange 671088663

Yuvanın protokol ailesi için yerel arabirimlerin listesi değiştiğinde bildirim almayı etkinleştirin. Bu değer Winsock 2 SIO_ADDRESS_LIST_CHANGE sabitine eşittir.

AddressListQuery 1207959574

Yuvanın bağlanabileceği yerel arabirimlerin listesini döndürür. Bu değer Winsock 2 SIO_ADDRESS_LIST_QUERY sabitine eşittir.

AddressListSort 3355443225

Alana göre döndürülen yapıyı AddressListQuery sıralayın ve IPv6 adresleri için kapsam kimliği bilgilerini ekleyin. Bu denetim kodu Windows XP ve sonraki işletim sistemlerinde desteklenir. Bu değer Winsock 2 SIO_ADDRESS_LIST_SORT sabitine eşittir.

AssociateHandle 2281701377

Bu yuvayı yardımcı arabirimin belirtilen tanıtıcısıyla ilişkilendirin. Ek ayrıntılar için Winsock 2 başvurusundaki uygun protokole özgü eke veya belirli yardımcı arabirimin belgelerine bakın. Bir yuva tarafından desteklenebilen diğer arabirimleri bulmak ve izlemek için bu IOCTL yerine Bileşen Nesne Modeli'nin (COM) kullanılması önerilir. Bu denetim kodu, COM'un kullanılamadığı veya başka bir nedenle kullanılamadığı sistemlerle geriye dönük uyumluluk için mevcuttur. Bu değer Winsock 2 SIO_ASSOCIATE_HANDLE sabitine eşittir.

AsyncIO 2147772029

Verilerin alınmayı beklediği durum bildirimini etkinleştirin. Bu değer Winsock 2 FIOASYNC sabitine eşittir.

BindToInterface 2550136840

Yuvayı belirtilen arabirim dizinine bağlayın. Bu değer Winsock 2 SIO_INDEX_BIND sabitine eşittir.

DataToRead 1074030207

Okuma için kullanılabilecek bayt sayısını döndürür. Bu değer Winsock 2 FIONREAD sabitine eşittir.

DeleteMulticastGroupFromInterface 2550136843

Yuvayı çok noktaya yayın grubundan kaldırın. Bu değer Winsock 2 SIO_INDEX_ADD_MCAST sabitine eşittir.

EnableCircularQueuing 671088642

Gelen ileti kuyrukları dolduğunda en eski kuyruğa alınmış veri birimi yerine gelen veri birimi ekleyin. Bu değer Winsock 2 SIO_ENABLE_CIRCULAR_QUEUEING sabitine eşittir.

Flush 671088644

Gönderen kuyruğun içeriğini atın. Bu değer Winsock 2 SIO_FLUSH sabitine eşittir.

GetBroadcastAddress 1207959557

Geçerli yuvanın adres ailesinin yayın adresini içeren bir SOCKADDR yapısı döndürür. Döndürülen adres yöntemiyle SendTo kullanılabilir. Bu değer Winsock 2 SIO_GET_BROADCAST_ADDRESS sabitine eşittir. Bu değer yalnızca Kullanıcı Veri Birimi Protokolü (UDP) yuvalarında kullanılabilir.

GetExtensionFunctionPointer 3355443206

Winsock belirtiminin parçası olmayan sağlayıcıya özgü işlevleri edinin. İşlevler sağlayıcı tarafından atanan GUID kullanılarak belirtilir. Bu değer Winsock 2 SIO_GET_EXTENSION_FUNCTION_POINTER sabitine eşittir.

GetGroupQos 3355443208

Yuva grubu için Hizmet Kalitesi (QOS) özniteliklerini döndürür. Bu değer gelecekte kullanılmak üzere ayrılmıştır ve Winsock 2 SIO_GET_GROUP_QOS sabitine eşittir.

GetQos 3355443207

Yuvayla ilişkili QOS yapısını alın. Bu değer Winsock 2 SIO_GET_QOS sabitine eşittir.

KeepAliveValues 2550136836

TCP etkin tutma paketlerini ve bunların gönderilme aralığını göndermeyi denetler. Ek bilgi için bkz. RFC 1122 bölüm 4.2.3.6. Bu değer Winsock 2 SIO_KEEPALIVE_VALS sabitine eşittir.

LimitBroadcasts 2550136839

Bu değer Winsock 2 SIO_LIMIT_BROADCASTS sabitine eşittir.

MulticastInterface 2550136841

Giden çok noktaya yayın paketleri için kullanılan arabirimi ayarlayın. Arabirim, dizini tarafından tanımlanır. Bu değer Winsock 2 SIO_INDEX_MCASTIF sabitine eşittir.

MulticastScope 2281701386

Yaşam Süresi (TTL) veya atlama sayısı olarak da bilinen bir yönlendirici tarafından çok noktaya yayın paketinin kaç kez iletilebileceğini kontrol edin. Bu değer Winsock 2 SIO_MULTICAST_SCOPE sabitine eşittir.

MultipointLoopback 2281701385

Yuva tarafından gönderilen çok noktaya yayın verilerinin yuva alma kuyruğunda gelen veriler olarak görünüp görünmeyeceğini denetler. Bu değer Winsock 2 SIO_MULTIPOINT_LOOPBACK sabitine eşittir.

NamespaceChange 2281701401

Bir ad alanı sorgusu geçersiz olduğunda yuvanın bildirim alıp almayacağını denetler. Bu denetim kodu Windows XP ve sonraki işletim sistemlerinde desteklenir. Bu değer Winsock 2 SIO_NSP_NOTIFY_CHANGE sabitine eşittir.

NonBlockingIO 2147772030

Yuvanın engelleme davranışını denetleyin. Bu denetim koduyla belirtilen bağımsız değişken sıfırsa, yuva engelleme moduna yerleştirilir. Bağımsız değişken sıfır değilse, yuva engelleyici olmayan moda yerleştirilir. Bu değer Winsock 2 FIONBIO sabitine eşittir.

OobDataRead 1074033415

Alınmayı bekleyen bant dışı veriler hakkındaki bilgileri döndürür. Akış yuvalarında bu denetim kodunu kullanırken, dönüş değeri kullanılabilir bayt sayısını gösterir.

QueryTargetPnpHandle 1207959576

Temel alınan sağlayıcının SOCKET tanıtıcısını alın. Bu tanıtıcı tak çalıştır olay bildirimini almak için kullanılabilir. Bu değer Winsock 2 SIO_QUERY_TARGET_PNP_HANDLE sabitine eşittir.

ReceiveAll 2550136833

Ağdaki tüm IPv4 paketlerini almayı etkinleştirin. Yuvanın adres ailesi InterNetworkolmalıdır, yuva türü Rawolmalıdır ve protokol türü olmalıdır IP. Geçerli kullanıcının yerel bilgisayardaki Administrators grubuna ait olması ve yuvanın belirli bir bağlantı noktasına bağlı olması gerekir. Bu değer Winsock 2 SIO_RCVALL sabitine eşittir.

ReceiveAllIgmpMulticast 2550136835

Ağdaki tüm İnternet Grubu Yönetim Protokolü (IGMP) paketlerini almayı etkinleştirin. Yuvanın adres ailesi InterNetworkolmalıdır, yuva türü Rawolmalıdır ve protokol türü olmalıdır Igmp. Geçerli kullanıcının yerel bilgisayardaki Administrators grubuna ait olması ve yuvanın belirli bir bağlantı noktasına bağlı olması gerekir. Bu değer Winsock 2 SIO_RCVALL_IGMPMCAST sabitine eşittir.

ReceiveAllMulticast 2550136834

Ağdaki tüm çok noktaya yayın IPv4 paketlerini almayı etkinleştirin. Bunlar 224.0.0.0 ile 239.255.255.255 aralığında hedef adresleri olan paketlerdir. Yuvanın adres ailesi InterNetworkolmalıdır, yuva türü Rawolmalıdır ve protokol türü olmalıdır Udp. Geçerli kullanıcının yerel bilgisayardaki Administrators grubuna ait olması ve yuvanın belirli bir bağlantı noktasına bağlı olması gerekir. Bu değer Winsock 2 SIO_RCVALL_MCAST sabitine eşittir.

RoutingInterfaceChange 2281701397

Uzak uç noktaya erişmek için kullanılan yerel arabirim değiştiğinde bildirim almayı etkinleştirin. Bu değer Winsock 2 SIO_ROUTING_INTERFACE_CHANGE sabitine eşittir.

RoutingInterfaceQuery 3355443220

Belirtilen uzak adrese bağlanmak için kullanılabilecek arabirim adreslerini döndürür. Bu değer Winsock 2 SIO_ROUTING_INTERFACE_QUERY sabitine eşittir.

SetGroupQos 2281701388

Yuva grubu için Hizmet Kalitesi (QOS) özniteliklerini ayarlayın. Bu değer gelecekte kullanılmak üzere ayrılmıştır ve Winsock 2 SIO_SET_GROUP_QOS sabitine eşittir.

SetQos 2281701387

Yuva için Hizmet Kalitesi (QOS) özniteliklerini ayarlayın. QOS, yuva için bant genişliği gereksinimlerini tanımlar. Bu değer Winsock 2 SIO_SET_QOS sabitine eşittir.

TranslateHandle 3355443213

Yuva için yardımcı arabirim bağlamında geçerli olan bir tanıtıcı döndürür. Bu değer Winsock 2 SIO_TRANSLATE_HANDLE sabitine eşittir.

UnicastInterface 2550136838

Giden tek noktaya yayın paketleri için kullanılan arabirimi ayarlayın. Bu değer Winsock 2 SIO_UCAST_IF sabitine eşittir.

Örnekler

Aşağıdaki kod örneği, DataToRead parametre değeriyle yöntemini çağırır IOControl(IOControlCode, Byte[], Byte[]) ve sonucu.Available özelliğine erişimle karşılaştırır.

void DisplayPendingByteCount( Socket^ s )
{
   array<Byte>^ outValue = BitConverter::GetBytes( 0 );
   
   // Check how many bytes have been received.
   s->IOControl( IOControlCode::DataToRead, nullptr, outValue );

   UInt32 bytesAvailable = BitConverter::ToUInt32( outValue, 0 );
   Console::Write( "server has {0} bytes pending,",
      bytesAvailable );
   Console::WriteLine( "Available property says {1}.",
      s->Available );
   return;
}
static void DisplayPendingByteCount(Socket s)
{
    byte[] outValue = BitConverter.GetBytes(0);

    // Check how many bytes have been received.
    s.IOControl(IOControlCode.DataToRead, null, outValue);

    uint bytesAvailable = BitConverter.ToUInt32(outValue, 0);
    Console.Write("server has {0} bytes pending. ",
        bytesAvailable);
    Console.WriteLine("Available property says {1}.",
                     s.Available);

    return;
}

Açıklamalar

Numaralandırma, IOControlCode yuva işlem modlarını belirtmek için adlandırılmış değerler sağlar. Bu değerler, Windows Sockets 2 (Winsock 2) WSAIoctl işlevine geçirilen denetim kodlarıdır.

Şunlara uygulanır