⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_27963.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:27963 发表者:高扬 发表日期:2003-01-16 17:39:03
<br>主题:关于邮件内容的问题
<br>内容:&nbsp;&nbsp;如何在邮件服务器中将从SOCKET中接收到的邮件内容拼结到一起来呢?例如用OUTLOOK发送邮件,邮件内容过大,而不得不分多个包发送的情况下,它后面的每一个包都包含了一个邮件头,有没有办法将这后面的邮件头过滤掉,这样才好把邮件的BODY组合在一起!<BR>还有就是关于邮件的附件的问题,怎么解决它的呢?将它又存成一个文件吗?然后发送给接受者的时候再插入进去吗?这段功能的代码在那里呢?谁能提供给我吗?<BR><BR>谁要是有时间,希望能指点在下一二
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-17 09:25:57
<br>内容:继续关注
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-17 10:44:15
<br>内容:看base54的结构
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-17 11:35:59
<br>内容:可是,不知你是否有用SOCKET截获过数据包??用SOCKET截获的邮件数据包里,每个包都有头信息在里面,这和我们用OUTLOOK收下一封完整的电子邮件不同啊,你所说的那情况,只适合完整的邮件吧?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-17 13:42:14
<br>内容:为什么要截获数据包呢,smtp是流协议,你只要调用recv()在应用层把buffer存储下来就是了,数据包的头已经被协议层解析调了阿
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-17 16:06:13
<br>内容:恩,抱歉我没有说清楚,我做的东西,不是象邮件服务器一样的东西。不过我不晓得如果是邮件服务器的话,那它要不要自己来过滤这样的数据包,并从中取出邮件的BODY?<BR>我要实现的是拦截用户对SOCKET中SEND、RECV的调用,并获取对邮件的收发,以此来获取邮件的内容,于是,我碰到的问题,就是它的每个数据包,都有包头!有没有这样一个邮件数据包的数据结构啊,能够把我截获的字串全部解析啊!<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-17 21:33:17
<br>内容:我不清楚什么邮件包头结构,我写过拦截程序,也写过邮件服务器软件。邮件传输再应用层用的smtp&amp;pop协议,实现邮件服务器时,也都用的是流协议的socket,smtp协议在DATA命令之后开始传输数据,即实际的邮件体,附件是邮件体的一部分。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-20 09:38:42
<br>内容:那老大,能不能给我一点这方面的编程思路,我就是要写个拦截程序,拦截EMAIL发送的程序,我现在能截获所有的包,但不懂如何将、他们转成EMAIL的文本,BASE64编码解码,应该是对应完整的EMAIL的内容的,我在我这也有试过,好象是行不通的,也就是说在进行BASE64解码前,我还要做什么操作呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-20 10:07:07
<br>内容:截获的包,找到具体的数据段,按照收到的顺序保存起来
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-20 14:20:37
<br>内容:就比如说过滤数据吧,我怎么知道哪些数据是邮件的BODY的呢?<BR>现在我的邮件HEAD可以通过判断关键字来确定,可BODY里都是被编码过的啊?如何知道别人哪个包是邮件数据包呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-20 17:47:08
<br>内容:除了Head之外都是数据阿,按顺序保存被
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-21 09:25:19
<br>内容:恩,高手,我的意思是说,我怎么知道那个包是邮件包呢,我既然是对整个SOCKET的send,recv都做挂钩,收到的包有很多并不是邮件的啊,还有IE之类什么的!我怎么分辨他们呢?难道只是判断对方端口吗?有没有什么好的办法?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-01-21 10:15:24
<br>内容:先要看你用什么截获的包,不过不管用什么都是有TCP/IP 或者是UDP头的,包括了源地址,目的地址,端口号,这就能确定是否是你要的包了。关键在第一个包。邮件发送,无非是smtp命令,一般先要HELO,之后到DATA就开始发送邮件,接下来看贝
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-01-21 10:53:30
<br>内容:还有就是如何判断这个邮件发送结束啊?<BR>某个用户可能连续向某个服务器发送多个文件呢?我怎么判断某个邮件的整个邮件数据我已经截获完整了呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:DarkCoder 回复日期:2003-01-22 17:27:51
<br>内容:发送一次邮件,要以 <BR>\r\n.\r\n结束,然后一般就Quit了,判断就是
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:aaaxyz 回复日期:2003-01-23 10:41:51
<br>内容:  你用TELNET 来实现SMTP协议。打个命令后。就看抓到的包是什么样子的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-02-13 10:41:15
<br>内容:有没有这方面的源代码可供参考啊?请继续关注
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:高扬 回复日期:2003-02-13 18:46:38
<br>内容:在SMTP中有DATA\R\N这样的标志,并且发送完后,还有\r\n.\r\n这样的标志被发送<BR>那么在POP3协议中,如何知道服务器开发发送邮件内容了呢?有没有类似这样的标志呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:roby 回复日期:2003-03-09 21:22:51
<br>内容:看完协议,应该可以了,我好象没有看懂你的问题?不管邮件多大,分多少包一样以一封邮件发送出去
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pengwen 回复日期:2003-04-22 22:16:28
<br>内容:在POP3协议里是用RETR X\R\N标志和\r\n.\r\n标志来分隔没一封邮件的X代表第几封邮件
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:DarkCoder 回复日期:2003-06-08 21:08:29
<br>内容:pop3协议是一套以请求---〉操作为模式的协议,必然是在拦截到RETR X\R\N命令后,紧接着的是邮件内容。<BR>你是不是要监听数据包?那样的话,你必须有一些判断以确定确实是这一次连接的数据包。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pengwen 回复日期:2003-06-08 23:18:57
<br>内容:当然了,可以通过判断ACK、SEQ序列号已及IP地址对和端口号来实现的。<BR>2003-6-8 23:23:02

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -