tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
541
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    july july ist offline Mitglied Gold
    Registriert seit
    May 2011
    Beiträge
    103
    Hallo zusammen,
    ich hab folgendes Problem. Ich arbeite auf einem Board, darum kann ich keinen Backgroudworker benutzen und verwende statt dessen Threads, also insgesamt hab ich 2 Threads: GUI- und ein Server-Thread, der Meldungen empfängt und an die GUI sie weitergeben soll, damit sie dargestellt werden sollen.
    Ich hab's folgendermaßen realisiert:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    
     private String server;
     
      public Client(Form1 myForm1, String serv)
      {
        myForm = myForm1;
        server = serv;
       }
       delegate void SetTextCallback(string text, Int16 position);
       public void connection()
       {....
         try
          {
           //Connection succeed
           //got message
           SetText(data[0], Convert.ToInt16(data[1]));
           ...
           }catch (ArgumentException ae)
                {
                    ...
                }
                catch (SocketException se)
                {
                   ....
                }
        }
        private void SetText(string text, int position)
        {
         if (myForm.InvokeRequired)
                    {
                        SetTextCallback d = new SetTextCallback(
                                            this.myForm.SetTextToListBox1);
                        myForm.Invoke(d, new object[] { text, position });
                    }
        }

    Auf der GUI-Seite gibt's entsprechend eine Methode SetTextToListBox1.
    Leider wirft mir die SetText()-Methode schon eine ArgumentException.
    Habt ihr vielleicht eine Idee woran es liegen könnte?

    Grüße July
     

  2. #2
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    vielleicht weil data[0] oder data[1] ungültige Werte liefert?
    Der Informationsgehalt deiner Fehlerbeschreibung ist etwas mau! Ein paar mehr Infos solltest du schon liefern
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  3. #3
    july july ist offline Mitglied Gold
    Registriert seit
    May 2011
    Beiträge
    103
    Also die Inhalte aus data[] stimmen 100%. Beim debuggen kann ich nur sehen, dass die Exception kommt direkt nach SetText()
     

  4. #4
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Step doch mal in die Methode! + BreakPoint in SetTextToListBox1 und schauen, was da passiert
    Und was genau angemeckert wird, hast du immer noch nicht gepostet! Für gewöhnlich wird der Exception die Info mit gegeben, welcher Parameter nicht wie erwartet ist.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  5. #5
    july july ist offline Mitglied Gold
    Registriert seit
    May 2011
    Beiträge
    103
    Das war das Problem, dass alle Parameter absolut richtig waren. Der Fehler lag bevor. Ich hab stream.read solange gemacht bis der Wert vom stream.Read = 0 war.
     

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 11.04.11, 10:48
  2. Antworten: 2
    Letzter Beitrag: 16.11.09, 15:51
  3. AWK Programmierung: Gibt es eine Methode "ersetzen"?
    Von thieltgj im Forum Sonstige Sprachen
    Antworten: 1
    Letzter Beitrag: 03.10.07, 14:15
  4. Antworten: 2
    Letzter Beitrag: 06.06.07, 18:37
  5. Antworten: 0
    Letzter Beitrag: 28.01.06, 13:59

Stichworte