Jump to content

Is there a tutorial on how to create an Email Client in C?

- - - - -

  • Please log in to reply
18 replies to this topic

#1
Bioshox

Bioshox

    Programming Professional

  • Members
  • PipPipPipPipPip
  • 207 posts
anybody got a tutorial on how to create an email client in C?

receive emails, send, etc?

#2
WingedPanther

WingedPanther

    A spammer's worst nightmare

  • Moderators
  • 16,831 posts
  • Location:Upstate, South Carolina
  • Programming Language:C, C++, PL/SQL, Delphi/Object Pascal, Pascal, Transact-SQL, Others
  • Learning:Java, C#, PHP, JavaScript, Lisp, Fortran, Haskell, Others
That is going to be platform dependent. C has not built-in networking capabilities.
Programming is a branch of mathematics.
My CodeCall Blog | My Personal Blog

#3
dargueta

dargueta

    Writes binary right handed and hex left handed

  • Moderators
  • 4,719 posts
  • Programming Language:C, Java, C++, PHP, Python, Perl, Assembly, Bash, Others
  • Learning:JavaScript
Do you know any socket programming? That's pretty important (and platform-dependent).
sudo rm -rf /

#4
RhetoricalRuvim

RhetoricalRuvim

    JavaScript Programmer

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,254 posts
  • Location:C:\Countries\US
Socket programming exists on both Windows and Linux; I haven't programmed for Macintosh (they don't give very good documentation for programmer's, as Microsoft does), so I don't know about that.

Also, I read, somewhere, that Windows socket programming is similar to Linux socket programming.

#5
dargueta

dargueta

    Writes binary right handed and hex left handed

  • Moderators
  • 4,719 posts
  • Programming Language:C, Java, C++, PHP, Python, Perl, Assembly, Bash, Others
  • Learning:JavaScript
I believe OSX socket programming uses the POSIX interface, so it should all be similar, but I'm pretty sure you can't just port the code over. Microsoft requires some extra function calls and such.
sudo rm -rf /

#6
mebob

mebob

    Programming Expert

  • Members
  • PipPipPipPipPipPip
  • 490 posts
Macintosh has POSIX sockets just like Linux does. Windows Sockets (Winsock) is quite similar to POSIX sockets.

Edited by mebob, 27 October 2011 - 12:38 PM.
correction

Latinamne loqueris?

#7
fread

fread

    Programming God

  • Members
  • PipPipPipPipPipPipPip
  • 787 posts
Excuse the cutting in - im actually searching for a "good" book on socket programming in C. Not to much complexity. Just the basics. any suggestions!
Perfection of means and confusion of ends seem to characterize our age. Albert Einstein :confused:

#8
dargueta

dargueta

    Writes binary right handed and hex left handed

  • Moderators
  • 4,719 posts
  • Programming Language:C, Java, C++, PHP, Python, Perl, Assembly, Bash, Others
  • Learning:JavaScript
Beej's Guide to Network ProgrammingThis is basically your bible for it.
sudo rm -rf /

#9
RhetoricalRuvim

RhetoricalRuvim

    JavaScript Programmer

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,254 posts
  • Location:C:\Countries\US
I understand this is a C/C++ part of the forum, but are there any assembly language resources for socket programming?

#10
mebob

mebob

    Programming Expert

  • Members
  • PipPipPipPipPipPip
  • 490 posts
For Windows? Just use the Windows API documentation. AFAIK the API function names and args are the same for C/C++ and MASM.
Latinamne loqueris?

#11
RhetoricalRuvim

RhetoricalRuvim

    JavaScript Programmer

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,254 posts
  • Location:C:\Countries\US

mebob said:

For Windows? Just use the Windows API documentation. AFAIK the API function names and args are the same for C/C++ and MASM.

I was actually thinking more NASM; I already tried socket programming with MASM32 (and 'invoke' , which I don't like, and don't want to depend on). So as for Win32 API, when it says a parameter is of size WORD, or BYTE (ie CHAR), does it really mean (DWORD)(WORD)(value), etc.? ('push dword 80' instead of 'push word 80' ?)

And as of right now, I don't have almost any knowledge/experience in programming for Linux; it would have been nice if I could develop, for Linux, same programs that I do for Windows (with NASM).

#12
fread

fread

    Programming God

  • Members
  • PipPipPipPipPipPipPip
  • 787 posts
I got an ebook. Linux socket programming by example. Just starting reading but it gets complex pretty fast.. i will give it some time...
Perfection of means and confusion of ends seem to characterize our age. Albert Einstein :confused:




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users