Sourcecode für kleinen LAN-Chat mit Sockets



  • Hallo.
    Ich suche schon ne Weile nach Sourcecode für nen kleinen Chat für Linux im LAN (macht nix wenn's auch mit Windows laufen sollte 🤡) )
    Die Grundstruktur undsoweiter sollte schon vorhanden sein (also dass auch mehr als 2 auf einmal miteinander chatten können). Hatte zwar schon was gefunden, das ging aber in die falsche Richtung...



  • ich hab mal sowas gemacht zum ausprobieren, mit Qt3, also cross-plattform, kannste auf windows und linux kompilieren. hat aber noch viele bugs, hab nie weiter dran gearbeitet, war nur um was zu probieren. ich kann mal gucken, wenn ich den sourcecode noch finde, kann ich den posten/ihn dir schicken wenn du willst. dann aber wahrscheinlich erst morgen.

    mfg,
    julian



  • Julian__ schrieb:

    ich hab mal sowas gemacht zum ausprobieren, mit Qt3, also cross-plattform, kannste auf windows und linux kompilieren. hat aber noch viele bugs, hab nie weiter dran gearbeitet, war nur um was zu probieren. ich kann mal gucken, wenn ich den sourcecode noch finde, kann ich den posten/ihn dir schicken wenn du willst. dann aber wahrscheinlich erst morgen.

    mfg,
    julian

    Jop, das wär wirklich gut! Eigentlich wollte ich es zwar erst nur textbasiert machen, aber da geht ja normal sowieso immer was 🤡



  • also, HIER hab ich das programm mal hochgeladen (wollte nicht das forum zuspammen mit ganzen programmen).
    viel spass damit. musst natürlich, wenn du den code benutzen willst (auf keinen fall ratsam, aber mach damit was du willst, steht unter keiner beschränkenden lizenz ;)), Qt3 installiert haben bzw. nach Qt4 portieren.

    <ot>
    allerdings sind bie megaupload die dt. download-slots meistens besetzt. wenn es nicht geht, lade ich es gerne woanders nochmal hoch, gib mir nur nen link. mir ist jetzt neben rapidshare nur megaupload eingefallen.
    kann man bei rapidshare eigentlich nur noch mit premium-account was hochladen oder bin ich zu blöd??
    </ot>

    mfg,
    julian



  • Julian__ schrieb:

    also, HIER hab ich das programm mal hochgeladen (wollte nicht das forum zuspammen mit ganzen programmen).
    viel spass damit. musst natürlich, wenn du den code benutzen willst (auf keinen fall ratsam, aber mach damit was du willst, steht unter keiner beschränkenden lizenz ;)), Qt3 installiert haben bzw. nach Qt4 portieren.

    <ot>
    allerdings sind bie megaupload die dt. download-slots meistens besetzt. wenn es nicht geht, lade ich es gerne woanders nochmal hoch, gib mir nur nen link. mir ist jetzt neben rapidshare nur megaupload eingefallen.
    kann man bei rapidshare eigentlich nur noch mit premium-account was hochladen oder bin ich zu blöd??
    </ot>

    mfg,
    julian

    Hm^^
    Ging mit MU doch dann nach dem 5. Versuch 🙂
    Ich sehe irgendwie bei rapidshare.de auch keinen DL-Link! Aber bei rapidshare.com (wird auf deutsch angezeigt :d )

    Ich werd mich mal an deinen Code machen, vielen Dank!

    mfg

    Mit welchem Programm hast du denn dran gearbeitet? Mit KDevDesigner kann ich zwar die .ui's schön verändern, aber ich bin noch zu noobig um dat ganze zu kompilieren (mache ich normal immer mit g++ ) 😃
    Sieht aber ziemlich gut aus 🙂



  • Ich sehe irgendwie bei rapidshare.de auch keinen DL-Link

    "ich hätte gerne ein kilo äpfel, habe aber die äpfel leider nicht gefunden."
    "ja, ich sehe die bananen auch nicht"
    (DL<>UL) 😉

    Aber bei rapidshare.com (wird auf deutsch angezeigt :d )

    danke! kannte ich gar nicht... (hätte man sicher auch per google gefunden *schäm*)

    Mit welchem Programm hast du denn dran gearbeitet?

    die ui-files hab ich mit dem Qt3-designer erstellt und kompiliert per kommandozeile (mithilfe von qmake und mingw32-make). war allerdings unter windows, da ich es nur unter windows xp brauchte (langweiliger mathe-unterricht + im computer-raum + winXp-netzwerk = ideale testbedingungen :D).
    bis vielleicht auf die cryptic.cpp (zu der müsste man vielelicht noch eine header-datei machen, die dann überall anstelle der cryptic.cpp eingebunden wird) sollte es aber auch unter linux funktionieren (ich gehe mal von linux aus, da du kdevdesigner benutzt).
    du brauchst dazu qmake und make und natürlich Qt3.
    in der QT3-DOKU steht, wie man qmake benutzt.
    wenn du das pro-file erstellt hast, gibst du auf der kommandozeile (natürlich erst in das verzeichnis mit dem pro-file wechseln) ein:

    qmake *name des pro-files*
    make (bzw. make *name des makefiles* falls du ein makefile von mehreren auswählen möchtest)

    wenn du dein programm selbst mit Qt schreiben wilst, solltest du dir ein paar tutorials dazu suchen. die tuts aus den trolltech-dokus sind sehr gut, jedoch auf englisch.
    mit Qt4 wird auch ein tool "qt3to4" mitgeliefert, mit dem du notfalls älteren code nach Qt4 portieren kannst. wenn du das aber jetzt mit meinem chat-code vorhaben solltest, schreib es lieber selbst neu (sehr gut gemeinter rat). 😉

    Sieht aber ziemlich gut aus 🙂

    sieht zwar nur so aus, aber totzdem dankeschön 🙂



  • Ich hab mich auch mal an das Bearbeiten eines anderen gemacht...Aber da tüftle ich seit 1 1/2 Stunden an einem dummen Fehler: Ich kann nur jeweils 1 Wort allein schicken, wenn ich "hallo" schreib is alles OK, wenn ich aber "hallo du" schreib kommt das "du" erst nach Antwort vom Server 😕 Im Original hat das ganz gut geklappt (da war dieses Problem nicht). Wenn ich "hallo_du" schreibe ist aber wieder alles Ok. Aber es geht zB irgendwie auch nicht einfach im Programm die " " mit "_" zu ersetzen (um dann später wieder andersrum weiterzumachen...), das gleiche Problem bleibt bestehen und ich sehe nichts von den _ 😡 Es ist wohl einfach schon zu spät^^
    Hier mal der Quellcode (sollte sich hauptsächlich um die simple_client_main.cpp handeln, Makefile ist schon beigefügt)
    http://www.r4g.de/chat.tar.gz

    Ich steh echt auf dem Schlauch wiedermal :-((

    Lösung:
    statt cin>>str
    getline(cin,str); (und danach ein cin.clear())
    Pff... sry^^



  • sowas passiert mir auch oft, wenn ich abends zu lange dran sitze. 🙂
    also wenn sich das schonmal so ergibt und das für dich nicht zu viel verlangt ist, würde ich trotzdem gerne mal wissen, ob du meinen kleinen demo-chat auch unter linux kompiliert bekommst. ich kann es gerade nicht selbst ausprobieren, weil ich erst am wochenende (wenn ich das schaffe) mein linux-system neu aufsetzen werde.
    danke schonmal.

    mfg,
    julian



  • Ehrlich gesagt: Ich bekomm's nicht wirklich hin 😕
    .pro-File:

    CONFIG += qt
    HEADERS += choiceDialog.ui.h \
            client.ui.h \
            optionsdlg.ui.h \
            server.h \
            serverdlg.ui.h 
    SOURCES = main.cpp \
            cryptic.cpp \
            server.cpp
    

    Dann das qmaken...Dann maken:
    Und dann ca. 50 mal
    XXX has not been declared (/in this scope)
    Ich seh die Klasse ChatProg zB auch nirgends definiert... Die ganzen Memberfunktionen,ja, aber halt die Definition nicht... Außerdem bin ich mir ziemlich sicher dass ich auch wegen den Headers wie zB qapplication.h falsch mache 😞
    mfg



  • du hast ja auch vergessen, in dem pro-file die ui-files anzugeben. 🙂

    TEMPLATE = app
    CONFIG  += qt
    HEADERS += choiceDialog.ui.h \
               client.ui.h \
               optionsdlg.ui.h \
               server.h \
               serverdlg.ui.h \
               cryptic.h
    SOURCES += cryptic.cpp main.cpp server.cpp cryptic.cpp
    FORMS   += choiceDialog.ui client.ui optionsdlg.ui serverdlg.ui
    

    die klassen wie z.B. ChatProg sind nur in den ui-files definiert. beim kompilieren wird automatisch das programm uic aufgerufen, das aus den ui-files dann "normale" cpp- und h-files macht, wo diese klassen drin definiert sind.

    wenn die header wie qapplication.h nicht gefunden werden, hast dui vielleicht die -dev-pakete von qt3 nicht installiert?

    außerdem musst du unter linux höchstwahrscheinlich aus der cryptic.cpp auch ne standart c++-unit mit h- und cpp-file machen, das sollte aber kein problem sein. musst dann natürlich auch immer cryptic.h anstatt cryptic.cpp einbinden (#include "cryptic.h"). (das beispiel der pro-file oben ist schon auf h- und n cpp-file ausgelegt)

    aber danke, dass du es ausprobierst!

    mfg,
    julian


Anmelden zum Antworten