Chat multiclient
-
Dann mach dir die Mühe und lad dir Sourcecodes aus dem inet runter, schau dir an wie andere das lösen. Ich hab aber ehr das Gefühl, daß du für die Suche einfach zu faul bist. Die nötwendigen Stichworte nach denen du googlen musst sind zur Genüge gefallen, wenn du also nichts findest, bist du sowieso unbegabt und solltest die Finger von der Programmierung lassen.
-
ich bin nicht zu faul..
Ich wollte ledeglich hilfe da ich schon im i.net ewig gesucht habe .
naja werd ich eben weitersuchen
-
Statt unbedingt ein "Beispiel" haben zu wollen, sag doch mal was du schon hast, und wo es genau klemmt. Es sieht halt so aus, als wenn du noch so gut wie gar nichts hast, und jemand anderes soll jetzt für dich die Arbeit machen und ein Grundgerüst erstellen damit du weitermachen kannst.
Client/Server Tutorials gibt es wie Sand am Meer (z.B. http://www.win-tux.de/c_028_002.htm). Guck es dir an, arbeite es durch und überleg dir dann, wie du es auf dein Problem anwenden kannst.
-
erstmal danke das sich die gemüter beruhigt haben D
ich hab natürlich schon was und ich kann auch von einem clienten zu einem ausgewählten einen text senden..
nur hätte ich gerne vorschläge wie ihr ein solches protokoll machen würdet
mein kleines ist:struct DataProto { int proto; char from[128]; char to[128]; char content[1024]; };und ich nehme an das das nicht gerade perfomant ist oder besser gesagt des is halt super anf#nger mäßig
-
Dein Protokoll hat alles, was es braucht: Absender, Empfänger und Inhalt. Bei diesen (geringen) Datenmengen ist es auch performant.
Was soll in proto stehen?
Warum hast Du für den Absender/Empfänger einen so großen Bereich (128 Byte) vorgesehen?Man kann in einem Optimierungsschritt das Protokoll dahingehend ändern, daß die Größe des Inhaltes dynamisch ist, und dann als erstes die Anzahl der zu übertragenden Bytes gesendet/empfangen wird.
-
danke für die vorschläge

Ehmm mal nebenbei wenn ich die userlist in einer listview anzeigen lass, wie realisier ich es am besten das wenn man einen user anclickt (kein problem) ein dialog erstellt wird?
-
und das proto war dafür gedacht das man z.B. für message to another client 1, für userlist request die 0 usw mitschickt.
Ist das sinnvoll oder sollte ich das auf eine andere weise lösen?
-
Das klingt doch schon besser. Wichtig ist, dass du dir Gedanken über das Problem machst. Dann kommst du irgendwann vielleicht auch selbst drauf.
Zu deinem "Protokoll", was soll denn int proto sein? Die Version des Protokolls um veraltete Clienten zu finden? Wenn der Server mit älteren Versionen des Protokolls kompatibel bleiben soll, keine schlechte Idee, aber vielleicht reicht es das beim Login zu senden, statt bei jeder Nachricht. Sollte aber so auch kein großes Problem sein und könnte einfacher sein so.
Denke aber auch daran, dass du verschiedene Nachrichten hast, die zwischen Client un Server ausgetauscht werden. Login/Logout, (Statusänderung), Kontaktliste abfragen/ändern usw.
Ich würde mir das erstmal ein allgemeines Format überlegen. Zum Beispiel (Art der Nachricht, Daten). Danch überlegst du dir, wie je nach Art der Nachricht dann die Daten aussehen.
Zu guter letzt wäre es sicherlich deutlich besser für die bandbreite die User durchzunummeriren und als int zu übergeben, statt ein char array zu nehmen. Der Client braucht dann natürlich eine Möglichkeit den Namen anhand siener Nummer vom Server zu holen.
Das nur so als ein paar Denkanstöße.
-
Vielen Dank für die "Denkanstöße" ich werd jetzt wieder mein hirn in gangg setzen und euch erst wieder nerven wenn's was wichtiges gibt.
Thx für alle "Denkanstöße :)" und alle die geholfen haben.
-
frage: wie kkönnte ich parameter übergeben, das wenn man in der listview einen usernamen auswählt immer ein neues fenster erstellt wird.(ich hab des schon mal gemacht dürfte nicht alzuschwer sein aber mir fällts einfach nicht mehr ein).
-
Probier's mal mit http://msdn.microsoft.com/en-us/library/bb773169
NM_DBLCLK und CreateWindow() ?
-
JA des is kla..
Aber ich muss dem Dialog/window ja ürgendwie parameter mitgeben/übergeben das ich pro user ein eigenes chat window habe
-
Wus?
-
Aso, mach dir ein Dialog-Template und dann:
// ... HWND dialogHandle = CreateDialog(instanceHandle, MAKEINTRESOURCE(IDD_DIALOG1), 0, DialogProcess); HWND listBoxHandle = GetDlgItem(dialogHandle, IDC_LIST1); // ...Musst dir dann halt ein dynamisches System überlegen.
-
jop. ^^
Thx funzt alles jetzt kann ich noch bissle was am design machen.(Frage: kennt/weiß jemand wie man einfach das design/theme ändern kann (andere buttons,...?).thx
-
Das http://www.c-plusplus.net/forum/viewtopic-var-t-is-187370.html
Oder das http://www.wxwidgets.org/
Oder das http://www.qtsoftware.com/
Oder das http://www.google.at
Oder alles komplett selbst zeichnen (Bevorzuge ich, arbeite grad an nem kompletten GUI System mit Editor, kann aber nen haufen Arbeit werden)
-
jap.^^
Ich habe selbstzeichnen gemeint..
jo, sieht nach arbeit aus