cookiefi Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 Morn, er helt her. Så dette er min første post. Har et problem, driver med c++ er helt ny og trenger hjelp har et program som jeg vill at skal sende en mail programmet starter i et cmd vindu. Dte jeg vill at det skal gjøre er at man bare fyller ut navn og tekst så sendes det til en mail som jeg har valgt den skal bl sendt med. Har vært og spurt rundt fått info om både smtp-libray og Winsoc. Iden min er kanskje dum og det har jeg fått høre før. Får heller være mener jeg nå. Den skal gjennomføres er mitt mål. Hvis noen har ider og komme med tutorials og andre saker tusen takk Lenke til kommentar
einaros Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 Spar tid, bruk blat. http://www.blat.net/194/ Lenke til kommentar
cookiefi Skrevet 16. mai 2006 Forfatter Del Skrevet 16. mai 2006 Spar tid, bruk blat. http://www.blat.net/194/ 6113526[/snapback] Nei jeg hat lyst til og lage et selv sier jeg jo :!: Lenke til kommentar
cookiefi Skrevet 16. mai 2006 Forfatter Del Skrevet 16. mai 2006 Jammen ... jammen 6114055[/snapback] Kanskje jeg skal si det enklere, jeg vill sende mail fa et c++ program som opperer i cmd... Funker det? Kankskje det er en dum ide, men jeg vill gjennomføre den. Noen med ider? Lenke til kommentar
einaros Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 Funker fint det. Finnes sikkert X bibliotek der ute du kan bruke til det. Evt. skrible din egen lille sak som kobler til en gitt smtp-server og sender HELO/EHLO og whatnow. Lenke til kommentar
Dead_Rabbit Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 Hvis du vil gjøre hele shaiten "manuelt", kan du gågle på "beej".. Da finner du stuff om socket programmering/network programming/whotever. Lenke til kommentar
cookiefi Skrevet 16. mai 2006 Forfatter Del Skrevet 16. mai 2006 Funker fint det. Finnes sikkert X bibliotek der ute du kan bruke til det. Evt. skrible din egen lille sak som kobler til en gitt smtp-server og sender HELO/EHLO og whatnow. 6114745[/snapback] Kan du forklare meg dette litt nærmere? Lenke til kommentar
dayslepr Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 (endret) du sier du har fått info om socket-programmering ("winsock", søk på beej) og smtp-biblioteker .. hva mer lurer du på? edit: om du skal kode din egen smtp-klient, søker du på "smtp rfc" edit2: om du er ny tipper jeg C og Beej-tutorialen (socket-programmering) er nok å sette seg inn i for en god stund fremover uansett .. Endret 16. mai 2006 av dayslepr Lenke til kommentar
cookiefi Skrevet 16. mai 2006 Forfatter Del Skrevet 16. mai 2006 (endret) du sier du har fått info om socket-programmering ("winsock", søk på beej) og smtp-biblioteker .. hva mer lurer du på? edit: om du skal kode din egen smtp-klient, søker du på "smtp rfc" edit2: om du er ny tipper jeg C og Beej-tutorialen (socket-programmering) er nok å sette seg inn i for en god stund fremover uansett .. 6115164[/snapback] Ja, ny er jeg nok. Og sikkert nok og sette seg frem i er det, men jeg lurer på om du kanskje kunne vise meg et eksempel`? Endret 16. mai 2006 av cookiefi Lenke til kommentar
Oracel Skrevet 16. mai 2006 Del Skrevet 16. mai 2006 bla bla bla jeg er n00b bla bla bla men jeg lurer på om du kanskje kunne vise meg et eksempel`? 6115348[/snapback] Altså, folk har gitt deg mer enn nok informasjon til å komme i gang med å søke og finne informasjon. Jeg tror ikke noen her er interessert i å holde deg i hånden mens du snubler deg gjennom kode du ikke forstår uansett. Lær deg grunnleggende C-syntax. Les en tutorial på sockets. Gjør noen øvinger. Gjør litt research på SMTP. Og til sist, se punkt 1 i signaturen min. Lenke til kommentar
cookiefi Skrevet 17. mai 2006 Forfatter Del Skrevet 17. mai 2006 OK, har fått en del hjelp nå. Men er det noen som kan se noen feil/forbedringer i denne koden? #define WIN32_LEAN_AND_MEAN #include <windows.h> #include <winsock2.h> #include <stdio.h> #include <stdlib.h> #pragma comment( lib, "wsock32.lib" ); // argc er antall argumenter slengt med programmet når det starter, argv[index] er selvfølgelig argumentet. int main( int argc, char *argv[] ) { WSADATA sData; SOCKET Client; if( WSAStartup( 0x0202, &sData ) ) return false; if( INVALID_SOCKET != (Client=socket( AF_INET, SOCK_STREAM, IPPROTO_TCP)) ) { LPHOSTENT Host = gethostbyname( "mail.online.no" ); SOCKADDR_IN ServerInfo; ServerInfo.sin_family = AF_INET; ServerInfo.sin_port = htons( 25 ); ServerInfo.sin_addr = *((LPIN_ADDR)*Host->h_addr_list ); if( SOCKET_ERROR != connect(Client, (LPSOCKADDR)&ServerInfo, sizeof(ServerInfo)) ) { char Data[512]; strcpy( Data, "HELO online.no\r\n" ); strcat( Data, "MAIL FROM:<[email protected]>\r\n" ); strcat( Data, "RCPT TO:<[email protected]>\r\n" ); strcat( Data, "DATA\r\n" ); strcat( Data, "Subject:E-postens tittel\r\n\r\n" ); // To ganger (RFC 882) strcat( Data, "Dette er da epostens innhold...\r\n" ); strcat( Data, "\r\n.\r\n" ); strcat( Data, "QUIT \r\n" ); if( -1 == send(Client, Data, sizeof(Data), 0) ) printf( "Error sending mail" ); } else printf( "connect error\n" ); } else printf( "Socket error\n" ); WSACleanup(); return 0; } Måtte legge den som en QUOTE siden CODE bare klikka Lenke til kommentar
Dead_Rabbit Skrevet 17. mai 2006 Del Skrevet 17. mai 2006 Er det noe feil med koden da? Under kjøring eller kompilering? Det er i enkelte tilfeller ganske greit å vite... Lenke til kommentar
cookiefi Skrevet 17. mai 2006 Forfatter Del Skrevet 17. mai 2006 Er det noe feil med koden da? Under kjøring eller kompilering? Det er i enkelte tilfeller ganske greit å vite... 6120139[/snapback] Det er vell egentlig ikke noe feil... Det kommer bare opp en del warnings og så sender den ikke mailen dit den skal... Den sender ikke i det hele tatt. ------ Rebuild All started: Project: Up and Go, Configuration: Debug Win32 ------Deleting intermediate and output files for project 'Up and Go', configuration 'Debug|Win32' Compiling... main.cpp c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(19) : warning C4081: expected 'newline'; found ';' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(175) : warning C4996: 'strcpy' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(73) : see declaration of 'strcpy' Message: 'This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(176) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(177) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(178) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(179) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(181) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(182) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' c:\documents and settings\eier\mine dokumenter\mine ting\c++\up and go\up and go\main.cpp(183) : warning C4996: 'strcat' was declared deprecated c:\programfiler\microsoft visual studio 8\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' Compiling manifest to resources... Linking... LINK : C:\Documents and Settings\Eier\Mine dokumenter\Mine Ting\C++\Up and Go\Debug\Up and Go.exe not found or not built by the last incremental link; performing full link Embedding manifest... Build log was saved at "file://c:\Documents and Settings\Eier\Mine dokumenter\Mine Ting\C++\Up and Go\Up and Go\Debug\BuildLog.htm" Up and Go - 0 error(s), 9 warning(s) ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ========== Lenke til kommentar
cookiefi Skrevet 18. mai 2006 Forfatter Del Skrevet 18. mai 2006 (endret) OVERSE DETTE OG HJELP MEG HELLER MED DET ANDRE Endret 18. mai 2006 av cookiefi Lenke til kommentar
Curze Skrevet 28. mai 2006 Del Skrevet 28. mai 2006 for å gjøre det manuelt i cmd: telnet mail.hotmail.com 25 helo ~~~~~Helo *ip* hilsen server MAIL FROM: [email protected] ~~~~~250: [email protected]... Sender OK RCPT TO: [email protected] ~~~~~~~250 [email protected] DATA ~~~~~~~354 start data and end with . i hate u, u dl to much porn. . ~~~~~250 <blablabla spam spam IP*> Queed mail for delivery. btw, "~~~~~" setningen skal liksom forestille de msg'ene som du får tilbake fra serveren. sikkert ikke helt lovlig å spoofe mail. så tar ikke ansvar om noen driter seg ut på en eller annen måte. Lenke til kommentar
ze5400 Skrevet 31. mai 2006 Del Skrevet 31. mai 2006 Hehe, det vet han, er ikke det som er problemet hans Lenke til kommentar
gnab Skrevet 1. juni 2006 Del Skrevet 1. juni 2006 Jeg testet koden din, og den fungerer som bare det herfra. Skrev om koden til å gå veien om mail.broadpark.no, da jeg sitter på en NextGenTel-linje, samt å vise responsen fra tjeneren, slik at du ser hva som evt. går feil. Koden er da nøyaktig slik (med unntak av e-post-adressene): #define WIN32_LEAN_AND_MEAN #include <windows.h> #include <winsock2.h> #include <stdio.h> #include <stdlib.h> #pragma comment( lib, "wsock32.lib" ); // argc er antall argumenter slengt med programmet når det starter, argv[index] er selvfølgelig argumentet. int main( int argc, char *argv[] ) { WSADATA sData; SOCKET Client; if( WSAStartup( 0x0202, &sData ) ) return false; if( INVALID_SOCKET != (Client=socket( AF_INET, SOCK_STREAM, IPPROTO_TCP)) ) { LPHOSTENT Host = gethostbyname( "mail.broadpark.no" ); SOCKADDR_IN ServerInfo; ServerInfo.sin_family = AF_INET; ServerInfo.sin_port = htons( 25 ); ServerInfo.sin_addr = *((LPIN_ADDR)*Host->h_addr_list ); if( SOCKET_ERROR != connect(Client, (LPSOCKADDR)&ServerInfo, sizeof(ServerInfo)) ) { char Data[512]; strcpy( Data, "HELO broadpark.no\r\n" ); strcat( Data, "MAIL FROM:<[email protected]>\r\n" ); strcat( Data, "RCPT TO:<[email protected]>\r\n" ); strcat( Data, "DATA\r\n" ); strcat( Data, "Subject:E-postens tittel\r\n\r\n" ); // To ganger (RFC 882) strcat( Data, "Dette er da epostens innhold...\r\n" ); strcat( Data, "\r\n.\r\n" ); strcat( Data, "QUIT \r\n" ); if( -1 == send(Client, Data, sizeof(Data), 0) ) printf( "Error sending mail" ); char ret[1024]; if ( -1 == recv(Client, ret, sizeof(ret), 0)) printf("Error receiving response" ); else printf("---<RESPONSE>---\n%s\n---</RESPONSE>---", ret); } else printf( "connect error\n" ); } else printf( "Socket error\n" ); WSACleanup(); return 0; } Lenke til kommentar
cookiefi Skrevet 6. juni 2006 Forfatter Del Skrevet 6. juni 2006 tusen takk skal teste den med engang Lenke til kommentar
cookiefi Skrevet 6. juni 2006 Forfatter Del Skrevet 6. juni 2006 Yes, det fungerte TUSEN TAKK! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå