IOControlCode Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje řídicí kódy vstupně-výstupních operací podporovaných metodou IOControl(Int32, Byte[], Byte[]).
public enum class IOControlCode
public enum IOControlCode
type IOControlCode =
Public Enum IOControlCode
- Dědičnost
Pole
| Name | Hodnota | Description |
|---|---|---|
| EnableCircularQueuing | 671088642 | Nahraďte nejstarší datagram ve frontě příchozím datagramem, když jsou fronty příchozích zpráv plné. Tato hodnota se rovná konstantě Winsock 2 SIO_ENABLE_CIRCULAR_QUEUEING. |
| Flush | 671088644 | Zahoďte obsah odesílající fronty. Tato hodnota se rovná SIO_FLUSH konstantě Winsock 2. |
| AddressListChange | 671088663 | Povolte příjem oznámení, když se změní seznam místních rozhraní pro rodinu protokolů soketu. Tato hodnota se rovná SIO_ADDRESS_LIST_CHANGE konstantě Winsock 2. |
| DataToRead | 1074030207 | Vrátí počet bajtů dostupných pro čtení. Tato hodnota se rovná konstantě FIONREAD winsock 2. |
| OobDataRead | 1074033415 | Vrátí informace o odchozích datech čekajících na přijetí. Při použití tohoto řídicího kódu na soketech streamu určuje návratová hodnota počet dostupných bajtů. |
| GetBroadcastAddress | 1207959557 | Vrátí strukturu SOCKADDR, která obsahuje adresu všesměrového vysílání pro řadu adres aktuálního soketu. Vrácenou adresu lze použít s metodou SendTo . Tato hodnota se rovná konstantě Winsock 2 SIO_GET_BROADCAST_ADDRESS. Tuto hodnotu lze použít pouze v soketech UDP (User Datagram Protocol). |
| AddressListQuery | 1207959574 | Vrátí seznam místních rozhraní, ke kterým může soket vytvořit vazbu. Tato hodnota se rovná SIO_ADDRESS_LIST_QUERY konstantě Winsock 2. |
| QueryTargetPnpHandle | 1207959576 | Načtěte popisovač SOKET příslušného zprostředkovatele. Tento popisovač lze použít k příjmu oznámení o události plug-and-play. Tato hodnota se rovná konstantě Winsock 2 SIO_QUERY_TARGET_PNP_HANDLE. |
| AsyncIO | 2147772029 | Povolte oznámení o tom, kdy data čekají na přijetí. Tato hodnota se rovná konstantě FIOASYNC winsock 2. |
| NonBlockingIO | 2147772030 | Řízení chování blokování soketu. Pokud je argument zadaný tímto řídicím kódem nula, je soket umístěn v blokovacím režimu. Pokud je argument nenulový, je soket umístěn v režimu odblokování. Tato hodnota se rovná konstantě FiONBIO winsock 2. |
| AssociateHandle | 2281701377 | Přidružte tento soket k zadanému popisovači doprovodného rozhraní. Další podrobnosti najdete v příslušné příloze specifické pro protokol v referenčních informacích k rozhraní Winsock 2 nebo dokumentaci pro konkrétní doprovodné rozhraní. Místo této hodnoty IOCTL se doporučuje použít model COM (Component Object Model) ke zjišťování a sledování dalších rozhraní, která mohou být podporována soketem. Tento řídicí kód je k dispozici pro zpětnou kompatibilitu se systémy, kde com není k dispozici nebo nelze použít z nějakého jiného důvodu. Tato hodnota se rovná konstantě Winsock 2 SIO_ASSOCIATE_HANDLE. |
| MultipointLoopback | 2281701385 | Určuje, jestli se data vícesměrového vysílání odesílaná soketem zobrazují jako příchozí data ve frontě příjmu soketů. Tato hodnota se rovná konstantě Winsock 2 SIO_MULTIPOINT_LOOPBACK. |
| MulticastScope | 2281701386 | Určuje, kolikrát může směrovač přesměrovat paket vícesměrového vysílání, označovaný také jako TTL (Time to Live) nebo počet směrování. Tato hodnota se rovná konstantě Winsock 2 SIO_MULTICAST_SCOPE. |
| SetQos | 2281701387 | Nastavte atributy QOS (Quality of Service) pro soket. QOS definuje požadavky na šířku pásma pro soket. Tato hodnota se rovná SIO_SET_QOS konstantě Winsock 2. |
| SetGroupQos | 2281701388 | Nastavte atributy QOS (Quality of Service) pro skupinu soketů. Tato hodnota je vyhrazena pro budoucí použití a je rovna winsock 2 SIO_SET_GROUP_QOS konstantě. |
| RoutingInterfaceChange | 2281701397 | Povolte příjem oznámení, když se změní místní rozhraní používané pro přístup ke vzdálenému koncovému bodu. Tato hodnota se rovná SIO_ROUTING_INTERFACE_CHANGE konstantě Winsock 2. |
| NamespaceChange | 2281701401 | Určuje, jestli soket obdrží oznámení, když se dotaz oboru názvů stane neplatným. Tento řídicí kód je podporován v systémech Windows XP a novějších operačních systémech. Tato hodnota se rovná SIO_NSP_NOTIFY_CHANGE konstantě Winsock 2. |
| ReceiveAll | 2550136833 | Povolte příjem všech paketů IPv4 v síti. Soket musí mít rodinu InterNetworkadres , typ soketu musí být Rawa typ protokolu musí být IP. Aktuální uživatel musí patřit do skupiny Administrators v místním počítači a soket musí být svázán s určitým portem. Tato hodnota se rovná konstantě Winsock 2 SIO_RCVALL. |
| ReceiveAllMulticast | 2550136834 | Povolte příjem všech paketů IPv4 vícesměrového vysílání v síti. Jedná se o pakety s cílovými adresami v rozsahu 224.0.0.0 až 239.255.255.255. Soket musí mít rodinu InterNetworkadres , typ soketu musí být Rawa typ protokolu musí být Udp. Aktuální uživatel musí patřit do skupiny Administrators v místním počítači a soket musí být svázán s určitým portem. Tato hodnota se rovná konstantě Winsock 2 SIO_RCVALL_MCAST. |
| ReceiveAllIgmpMulticast | 2550136835 | Povolte příjem všech paketů PROTOKOLU IGMP (Internet Group Management Protocol) v síti. Soket musí mít rodinu InterNetworkadres , typ soketu musí být Rawa typ protokolu musí být Igmp. Aktuální uživatel musí patřit do skupiny Administrators v místním počítači a soket musí být svázán s určitým portem. Tato hodnota se rovná konstantě Winsock 2 SIO_RCVALL_IGMPMCAST. |
| KeepAliveValues | 2550136836 | Řízení odesílání paketů tcp keep-alive a intervalu, ve kterém se odesílají. Další informace naleznete v dokumentu RFC 1122 oddíl 4.2.3.6. Tato hodnota se rovná SIO_KEEPALIVE_VALS konstantě Winsock 2. |
| AbsorbRouterAlert | 2550136837 | Tato hodnota se rovná SIO_ABSORB_RTRALERT konstantě Winsock 2. |
| UnicastInterface | 2550136838 | Nastavte rozhraní používané pro odchozí pakety jednosměrového vysílání. Tato hodnota se rovná konstantě Winsock 2 SIO_UCAST_IF. |
| LimitBroadcasts | 2550136839 | Tato hodnota se rovná konstantě Winsock 2 SIO_LIMIT_BROADCASTS. |
| BindToInterface | 2550136840 | Vytvořte vazbu soketu na zadaný index rozhraní. Tato hodnota se rovná SIO_INDEX_BIND konstantě Winsock 2. |
| MulticastInterface | 2550136841 | Nastavte rozhraní používané pro odchozí pakety vícesměrového vysílání. Rozhraní je identifikováno jeho indexem. Tato hodnota se rovná SIO_INDEX_MCASTIF konstantě Winsock 2. |
| AddMulticastGroupOnInterface | 2550136842 | Připojte skupinu vícesměrového vysílání pomocí rozhraní identifikovaného indexem. Tato hodnota se rovná konstantě Winsock 2 SIO_INDEX_ADD_MCAST. |
| DeleteMulticastGroupFromInterface | 2550136843 | Odeberte soket ze skupiny vícesměrového vysílání. Tato hodnota se rovná konstantě Winsock 2 SIO_INDEX_ADD_MCAST. |
| GetExtensionFunctionPointer | 3355443206 | Získejte funkce specifické pro zprostředkovatele, které nejsou součástí specifikace rozhraní Winsock. Funkce se zadají pomocí identifikátoru GUID přiřazeného poskytovatelem. Tato hodnota se rovná SIO_GET_EXTENSION_FUNCTION_POINTER konstantě Winsock 2. |
| GetQos | 3355443207 | Načtěte strukturu QOS přidruženou k soketu. Tato hodnota se rovná konstantě Winsock 2 SIO_GET_QOS. |
| GetGroupQos | 3355443208 | Vrátí atributy QOS (Quality of Service) pro skupinu soketů. Tato hodnota je vyhrazena pro budoucí použití a je rovna winsock 2 SIO_GET_GROUP_QOS konstantě. |
| TranslateHandle | 3355443213 | Vrátí popisovač soketu, který je platný v kontextu doprovodného rozhraní. Tato hodnota se rovná konstantě Winsock 2 SIO_TRANSLATE_HANDLE. |
| RoutingInterfaceQuery | 3355443220 | Vrátí adresy rozhraní, které lze použít pro připojení k zadané vzdálené adrese. Tato hodnota se rovná konstantě Winsock 2 SIO_ROUTING_INTERFACE_QUERY. |
| AddressListSort | 3355443225 | Seřaďte strukturu vrácenou AddressListQuery polem a přidejte informace o ID oboru pro adresy IPv6. Tento řídicí kód je podporován v systémech Windows XP a novějších operačních systémech. Tato hodnota se rovná SIO_ADDRESS_LIST_SORT konstantě Winsock 2. |
Příklady
Následující příklad kódu volá metodu IOControl(IOControlCode, Byte[], Byte[]) s hodnotou parametru DataToRead a porovná výsledek s přístupem k vlastnosti.Available
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;
}
Poznámky
Výčet IOControlCode poskytuje pojmenované hodnoty pro určení provozních režimů soketů. Tyto hodnoty jsou řídicí kódy předané funkci Windows Sockets 2 (Winsock 2). WSAIoctl