Pop3 verbinden
-
RHBaum schrieb:
Also wirst du definitiv windows/linux spezifische komponenten verwenden muessen(winsock / SystemV sockets), oder du suchst dir ne biblothek, die dir genau das abstrahiert und auf den entsprechenden system zur verfuegung steht ... faellt mir aber momentan keine ein ...
Bedingte kompilierung. Da ist nicht sehr viel was sich unterscheidet.
Code-Hacker
-
Ja klar, aber trotzdem nutzt oder besser schlaegt er sich mit Systemspezifischen eigenheiten rum ...
Ich will dabei keine Windows oder Linux-spezifischen Komponenten verwenden
Beisst sich halt nur irgendwie ...
Ich wuerd ne Lib schreiben, die mir die sache abstrahiert, und ne gemeingueltige schnittstelle fuer win und linux zur verfuegung stellt.
Die lib von einem system zum anderen zu portieren, ist IMHO weniger aufwand, als Im code mich zusaetzlich noch mit BS CompilerFlags rumzuaergern ...
Ist aber Ansichtssache ....Ciao ...
-
Ich versuch es nun erstmal nur unter win! Dann schau ich mal weiter!
Hat denn jemand ein gutes tutorial für winsocks da?
Wäre super! Ich weiß es nervt, aber ich bin Anfänger! Ich habe auch schon gesucht, aber leider nichts gefunden.Gruß Djarin
-
Also willst du's doch Windowsspezifisch halten? Die Idee mit dem Abstrahieren ist relativ gut, nur halte ich es nicht für notwendig, etwas zu tun, was schon ziemlich viele Leute vor mir getan haben. Eine kurze Suche mit "sockets c++ windows linux" liefert zb als erstes ergebnis die Simple Sockets. Allerdings beachte die Copyrighthinweise. Suche andere Seiten!
http://www.mainframeforum.com/t624716.html hilft vielleicht auchAber da du dich jetzt für Windows einmal entschieden hast: Schau mal zu den FAQs vom WinAPI Forum. WinAPI ist jetzt das Stichwort.
-
Ein Comment auf der Site "Simple Sockets":
This is the code and the girl I was
looking for. Now I have the code! Let´s
keep trying.
Thanks for the code
Logicport.Er hat recht.
-
int connect ( SOCKET con, SOCKADDR* name, int namelen ); ... rc=connect(con,(SOCKADDR*)&addr,sizeof(SOCKADDR)); ...
Oben seht ihr die int connect (wie man sieht ;).) auf die bezieht sich die untere Zeile. Nun bekomme ich aber beim compilieren folgen Fehler:
[Linker error] undefined reference to `connect(unsigned, sockaddr*, int)'
Kann mir irgendwer sagen, wie ich diesen Fehler beheben kann? Oder was ihr noch für Infos braucht um den Fehler zu lösen.
Danke im voraus djarin
-
Du musst ws2_32.lib linken
-
Det hab ich schon gemacht!
SOCKET socket ( int af, int type, int protocol ); con=socket(AF_INET,SOCK_STREAM,0);
Anstelle der 0 (bei "con = socket(...,...,0); muss ich doch nen bestimmtes Protokoll angeben oder? In meinem Fall doch irgendwie POP3 oder sowas?!
Bitte helft mir!Gruß djarin
-
Bitte helft mir ich finde echt nix!
-
Bin mir nicht ganz sicher, aber evtl. musst du nur bei connect eben den entsprechenden Port angeben
-
SOCKET hSock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);