Hi allen,
Voor mijn winform applicatie maak ik gebruik van 2 forms.
Beide gebruiken een UDP socket waarbij UDP gestuurd word en ontvangen.
Form1 is mijn hoofdscherm, welk nooit gesloten word
Form 2 is een kleiner configuratiescherm welke geopend en gesloten kan worden middels Form1
In de form kan je de bestemming IP en poort invullen.
Dit werkt in principe heel goed, echter door het toevoegen van het scherm krijg ik nog foutmeldingen met 'Cannot access diposed object'. Ik weet wat het inhoud, ik snap het denk ik ook, online is er veel over te lezen.
Wat ik vooral uit begrijp is wanneer je Client.Close(); doet dat hij niet meer te openen is..
Disposed = verwijderd..
Een volgorde waarin het altijd mis gaat:
- Starten applicatie --> Form1 opent --> gegevens invullen (IP/poort) en toepassen(in principe begint hier ook de UDP socket) .
- Openen Form2 (via een advanced button) --> hier word in form1 de Client gesloten (Client.Close();)
- Form2 starten Client
- Form2 scherm sluiten --> Client word gesloten --> Form1 weer gegevens invullen
- Op moment van toepasssen verschijnt er de foutmelding
Ik loop eigenlijk al vrij lang hiermee te stoeien, als ik de Client Close niet gebruik, dan krijg ik nog veel meer foutmeldingen omdat ze botsen (je kan natuurlijk niet meerdere sockets op dezelfde poort gebruiken)
Ik ben dan ook heel erg benieuwd of iemand hier mij hierbij kan helpen?
Deze vraag heb ik ook al op Stackoverflow gevraagd maar de mensen zijn daar niet heel sociaal
Ik deel graag mijn code.
..
Voor mijn winform applicatie maak ik gebruik van 2 forms.
Beide gebruiken een UDP socket waarbij UDP gestuurd word en ontvangen.
Form1 is mijn hoofdscherm, welk nooit gesloten word
Form 2 is een kleiner configuratiescherm welke geopend en gesloten kan worden middels Form1
In de form kan je de bestemming IP en poort invullen.
Dit werkt in principe heel goed, echter door het toevoegen van het scherm krijg ik nog foutmeldingen met 'Cannot access diposed object'. Ik weet wat het inhoud, ik snap het denk ik ook, online is er veel over te lezen.
Wat ik vooral uit begrijp is wanneer je Client.Close(); doet dat hij niet meer te openen is..
Disposed = verwijderd..
Een volgorde waarin het altijd mis gaat:
- Starten applicatie --> Form1 opent --> gegevens invullen (IP/poort) en toepassen(in principe begint hier ook de UDP socket) .
- Openen Form2 (via een advanced button) --> hier word in form1 de Client gesloten (Client.Close();)
- Form2 starten Client
- Form2 scherm sluiten --> Client word gesloten --> Form1 weer gegevens invullen
- Op moment van toepasssen verschijnt er de foutmelding
Ik loop eigenlijk al vrij lang hiermee te stoeien, als ik de Client Close niet gebruik, dan krijg ik nog veel meer foutmeldingen omdat ze botsen (je kan natuurlijk niet meerdere sockets op dezelfde poort gebruiken)
Ik ben dan ook heel erg benieuwd of iemand hier mij hierbij kan helpen?
Deze vraag heb ik ook al op Stackoverflow gevraagd maar de mensen zijn daar niet heel sociaal
Ik deel graag mijn code.
..