Statyczne klasy, pola, konstruktory.

0

Witam.
Mam na przykład taką klasę:

public static class ExampleClass
    {
        public static TcpClient client;
        public static BinaryWriter Writer;
        public static string ip = "...";
        public static int port = ...;

        static ExampleClass()
        {
            client = new TcpClient();
            client.Connect(IPAddress.Parse(ip), port);
            Writer = new BinaryWriter(client.GetStream());
        }
    }

której używam najpierw w pierwszej formatce, potem pierwsza się chowa i pojawia się druga. W pierwszej nie ma problemu, natomiast kiedy z poziomu drugiej formatki (klasy) próbuję odnieść się do któregoś z pól przykładowej klasy, kompilator wywala błąd:
Nie można uzyskać dostępu do usuniętego obiektu.
Na początku pomyślałem że może obiekty statyczne z przykładowej klasy mogą ulec zerowaniu kiedy zamykam formatkę z której po raz pierwszy zostały wywołane, dlatego zamiast zamykać okno użyłem funkcji Hide() ale to też nie pomogło. Da się coś z tym zrobić, czy muszę przebudować kod tak żeby pierwsze okno przekazywało w argumentach drugiemu te wszystkie obiekty?

1

W której konkretnie linijce występował ten błąd?

0
Client.Writer.Write(msg);
1

A ten Writer to pewno jakiś zamknięty strumień?

0

Tak. Client jest cały czas połączony, więc strumień musi być zamknięty.
[EDIT]: A jednak. Sprawdziłem, klient jakoś traci połączenie z serwerem. Dzięki za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1