sharpGG - odbieranie wiadomości

0

Witam, c# zajmuje sie od niedawna, a natknalem sie na sharpGG i postanowilem na tym komponecie sie troche rozwinąć w tej kwestii;] Piszę sobie prosty komunikator ale natknalem sie na problem.
Jak wygląda obsługa odbioru wiadomości w shGG ?
Mógłbym prosić o przykładowy króciutki kod ilustrujący jak korzystać ze zdarzenia GGMessageReceive?

0
sharpGG.GGMessageReceive += new sHGG.GenericEventHandler<sHGG.MessageReceiveEventArgs>(sharpGG_GGMessageReceive);


....

 void sharpGG_GGMessageReceive(object sender, sHGG.MessageReceiveEventArgs args)
{
    richTextBox1.Text += "[" + args.Number.ToString() + "] " + args.Message;
}
0

dzieki wielkie ;)
btw, gratuluje komponentu, świetna robota :)

0

a mi wypisuje :

Nieprawidłowa operacja między wątkami: do formantu 'richTextBox1' uzyskiwany jest dostęp z wątku innego niż wątek, w którym został utworzony.

Jestem początkujący, co mam zrobić??

0
wojtashekzg napisał(a)

a mi wypisuje :

Nieprawidłowa operacja między wątkami: do formantu 'richTextBox1' uzyskiwany jest dostęp z wątku innego niż wątek, w którym został utworzony.

Jestem początkujący, co mam zrobić??

Poczytać o wątkach w necie - jedyna rada...

0

Nieprawidłowa operacja między wątkami: do formantu 'richTextBox1' uzyskiwany jest dostęp z wątku innego niż wątek, w którym został utworzony.

Mała wada SHGG . Jeśli zbudujesz obiekt klasy SHGG po załadowaniu formy - nie będziesz miał tego błędu. Czyli .. nie twórz obiektu SHGG jako pole w formie - przed załadowaniem tej formy!

Windows.Forms ma swój własny system synchronizacji wątków - nazywa to się "Message Pump". Jednak wykrycie tego następuje przy konstruktorze SHGG. Jeśli zatem zbudujesz SHGG przed załadowaniem formy - nie będzie synchronizacji. :-/

0

Nadal nie wiem jak to zrobić, mógłbyś może napisać przykładowy kod który usunie z mojego programu ten błąd? Dzieki z góry ;)

0

Będzie błąd:

 public partial class Form1:Form {
        SHGG gg=new SHGG();

Nie będzie błędu:

 public partial class Form1:Form {
        SHGG gg

    private void Form_Load(object sender,EventArgs e) {
      gg=new SHGG();
}

.. gdzie Form_Load to zdarzenie załadowania formy.

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