Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 19287|Svar: 1

[Källa] [Verklig strid] UDP System.Net.Sockets.SocketException

[Kopiera länk]
Publicerad på 2017-03-09 10:16:26 | | |
System.Net.Sockets.SocketException (0x80004005): Den fjärrvärden tvingade en befintlig anslutning att stängas.   I System.Net.Sockets.Socket.ReceiveFrom(Byte[] b



Under UDP-kommunikation, med hjälp av try... catch-satsen får alltid ett fel när data accepteras:
System.Net.Sockets.SocketException (0x80004005): Den fjärrvärden tvingade en befintlig anslutning att stängas.
Den dummaste lösningen från början var att inte göra något i catch-satsen och låta funktionen för lyssningsporten fortsätta köra. Men detta är ingen långsiktig lösning, och jag sökte länge online och hittade Microsofts förklaring.


Microsofts förklaring: http://support.microsoft.com/kb/263823

Lösning:








Föregående:Utförde ett UDP-hål framgångsrikt [Omtryck]
Nästa:Javascrip{filter}t window.print() ställer in tryckstilen och innehållet
 Hyresvärd| Publicerad på 2017-03-09 10:17:54 |
Efter att ha initialiserat objektet, sätt egenskaperna enligt följande:
                    uint IOC_IN = 0x80000000;
                    uint IOC_VENDOR = 0x18000000;
                    uint SIO_UDP_CONNRESET = IOC_IN | IOC_VENDOR | 12;
//uc为接收数据所使用的UdpClient,不同程序自己手改
            UC. Client.IOControl((int)SIO_UDP_CONNRESET, ny byte[] {Convert.ToByte(false)}, null);

Socket.IOControl-metoden (IOControlCode, byte[], byte[])
Använd IOControlCode för att specificera styrkod som sätter ett lågnivå-driftläge för socketen.
parameter
ioControlCode
Ett IOControlCode-värde som specificerar kontrollkoden för åtgärden som ska utföras.
optionInValue
En array av typen Byte som innehåller indatan som krävs för operationen.
optionOutValue
En array av typen Byte som innehåller utdatan som returneras av operationen.
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com