求C#根据登录名和密码获取搜狐或者新浪邮箱的收件箱文件 源码,200分

DataBox-MDX 2011-08-21 02:13:07
rt,哪位大侠有源码,急求,分数不够可以再给!qq:825838346
...全文
2025 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-08-21
  • 打赏
  • 举报
回复

调用接口登陆进去就可以了?

<script language="JavaScript">
<!--
function log_submit(){
var User = document.mailForm.mail_name.value;
var ProNo = document.mailForm.mailSelect.value;
var mail_action = ProNo.split(";");
if(mail_action.length > 1)
{
if(mail_action[1]=="suffix")
User += "@"+mail_action[2];
else
("document.mailForm."+mail_action[1]+".value = '"+mail_action[2]+"';");
}
var Passwd = document.mailForm.mail_password.value;
var Formobj = document.mailForm;
function checkUserPass(){
if (User == ""){
alert("请填写用户名");
document.mailForm.mail_name.focus();
return false;
}
else if (Passwd == ""){
alert("请填写密码");
document.mailForm.mail_password.focus();
return false;
}
else {
return true;
}
}
if (checkUserPass()){
document.mailForm.action = mail_action[0];
document.mailForm.u.value = User;
document.mailForm.user.value = User;
document.mailForm.LoginName.value = User;
document.mailForm.username.value = User;
document.mailForm.UserName.value = User;
document.mailForm.login_name.value = User;
document.mailForm.login.value = User;
document.mailForm.psw.value = Passwd;
document.mailForm.pass.value = Passwd;
document.mailForm.passwd.value = Passwd;
document.mailForm.password.value = Passwd;
document.mailForm.Password.value = Passwd;
document.mailForm.login_password.value = Passwd;
document.mailForm.submit();
document.mailForm.mail_password.value = "";
}
return false;
}
//-->
</script>

<table cellspacing="0" align="left" style="border: 1px solid #c 0c0c0; font-size: 13px">
<tr style="color: #ffffff; background: #336699;">
<td align="left">
常用邮箱快速登录
</td>
<td align="right">
</td>
</tr>
<tr height="22">
<form method="post" target="_blank" name="mailForm" onsubmit='return log_submit();'>
<input type="hidden" name="u" value="">
<input type="hidden" name="user" value="">
<input type="hidden" name="LoginName" value="">
<input type="hidden" name="username" value="">
<input type="hidden" name="UserName" value="">
<input type="hidden" name="login_name" value="">
<input type="hidden" name="login" value="">
<input type="hidden" name="psw" value="">
<input type="hidden" name="language" value="">
<input type="hidden" name="pass" value="">
<input type="hidden" name="passwd" value="">
<input type="hidden" name="password" value="">
<input type="hidden" name="Password" value="">
<input type="hidden" name="login_password" value="">
<input type="hidden" name="url" value="">
<input type="hidden" name="BackURL" value="">
<td colspan="2">
<select name="mailSelect" size="1">
<option selected>选择您的邮箱</option>
<option value="http://mail.sina.com.cn/cgi-bin/login.cgi">@sina.com</option>
<option value="http://reg.163.com/in.jsp?url=http://fm163.163.com/coremail/fcg/ntesdoor2?username=wd.dm.mailForm.name.value">
@163.com</option>
<option value="http://login.mail.sohu.com/chkpwd.php">@sohu.com</option>
<option value="http://login.chinaren.com/zhs/servlet/Login;url;http:/mail.chinaren.com">
@ChinaRen.com</option>
<option value="http://bjweb.163.net/cgi/163/login_pro.cgi">@163.net</option>
<option value="http://bjweb.mail.tom.com/cgi/163/login_pro.cgi">@Tom.com</option>
<option value="http://webmail.21cn.com/NULL/NULL/NULL/NULL/NULL/SignIn.gen">@21cn.com</option>
<option value="https://edit.bjs.yahoo.com/config/login">@yahoo.com.cn</option>
<option value="http://entry.126.com/cgi/login">@126.com</option>
<option value="http://g2wm.263.net/xmweb">@263.net</option>
<option value="http://freemail.eyou.com/cgi-bin/login">@eyou.com</option>
<option value="http://vip.sina.com/cgi-bin/login.cgi">@vip.sina.com</option>
<option value="http://vip.163.com/payment/VipLogon.jsp">@vip.163.com</option>
<option value="http://paymail.china.com/extend/gb/NULL/NULL/NULL/SignIn.gen">@China.com</option>
<option value="http://mw1.elong.com/cgi-bin/weblogon.cgi">@elong.com</option>
<option value="http://login.etang.com/servlet/login;BackURL;http:/mail.etang.com/cgi/door">
@etang.com</option>
<option value="http://www.citiz.net/login.jsp">@citiz.net</option>
<option value="http://202.106.186.230/extend/newgb1/NULL/NULL/NULL/SignIn.gen">@email.com.cn</option>
</select>
<input type="submit" value="登录" style="background-color: #FFD700">
</td>
</tr>
<tr>
<td height="22" colspan="2">
用 户 名:<input name="mail_name" onfocus="this.select" size="12">
</td>
</tr>
<tr>
<td colspan="2">
登录密码:<input name="mail_password" onfocus="this.select" type="password" size="12">
</td>
</tr>
</form>
</table>

心灵彩虹 2011-08-21
  • 打赏
  • 举报
回复
C# 接收POP3服务器的邮件

注意接收邮件的协议有两种,一种是POP3,另外一种较为高级的协议是IMAP4,有的邮箱使用的是POP3协议,比如网易163免费邮箱、新浪免费邮箱、搜狐免费邮箱,有的邮箱使用的是IMAP4协议,比如Gmail免费邮箱,有的两种都可以,比如QQ邮箱。这些免费邮箱都需要做一些设置(例如选择开启POP3)才能开启从客户端(比如自己做的接收邮件的程序)接收邮件的功能。
using LumiSoft.Net.MIME;
using LumiSoft.Net.POP3.Client;
using LumiSoft.Net.Mail;
public void 收邮件()
{
POP3_Client _POP3客户端 = new POP3_Client();
string POP3服务器 = "pop.163.com";
string 用户名 = "user@163.com";
string 密码 = "password";
Mail_Message mime;
//POP3_ClientMessage message;
try
{
//if (_POP3客户端.IsConnected == false)
_POP3客户端.Connect(POP3服务器, 110);
_POP3客户端.Authenticate(用户名, 密码, true);
var q = (from POP3_ClientMessage x in _POP3客户端.Messages select x).OrderBy(x=>-x.SequenceNumber );
foreach (POP3_ClientMessage message in q)//倒序对于新邮件比较快
{
try
{
mime = Mail_Message.ParseFromByte(message.HeaderToByte());
}
catch { continue; }
//下面是接收附件的一种方法,假设只有一个附件。
mime = Mail_Message.ParseFromByte(message.MessageToByte());
Stream decodedDataStream = ((MIME_b_SinglepartBase)mime.Attachments[0].Body).GetDataStream();
string file = mime.Attachments[0].ContentType.Param_Name;
using (FileStream fs = File.Create(file ))
{ LumiSoft.Net.Net_Utils.StreamCopy(decodedDataStream, fs, 4000); }

_POP3客户端.Dispose(); _POP3客户端 = null;
}
}
catch (Exception x)
{
MessageBox.Show("接收邮件时发生异常: " + x.Message, "接收邮件", MessageBoxButtons.OK, MessageBoxIcon.Hand);
}
}
C#并没有一个类专门用来接收邮件,所以这里使用了第三方组件LumiSoft.Net,如果不用这些组件就得自己去研究POP3协议了这通常是一件吃力不讨好的事情。
接收邮件的步骤如下:
1,先连接POP3服务器,这里需要几个参数,一个是服务器,比如“pop.163.com”这个是网易免费邮箱用的。一个是服务器的端口,一般是110,不过不排除某些服务器有自己规定的可能。另外一个参数可能是关于是否开启SSL加密的选项。比如Gmail 邮箱就需要SSL加密连接。
_POP3客户端.Connect(POP3服务器, 110);
2,验证身份,至少需要用户名(一般就是邮箱地址了)、密码。有的可能允许用加密的方法验证,以防止帐户信息泄露。
_POP3客户端.Authenticate(用户名, 密码, true);
上面两步都有异步方式的方法,可以避免阻塞当前UI线程。
3,验证身份成功后就会得到一些基本的信息,比如邮箱中邮件的总数,总大小。在上面的代码中邮件叫作“message”。即 邮件=message
4,通过 foreach ( POP3_ClientMessage message in _POP3客户端.Messages )
可以一封一封的查看邮件。
这个时候整个邮件并没有下载下来,通过调用一些方法,可以下载指定的部分。
比如
mime = Mail_Message.ParseFromByte(message.HeaderToByte());
这个将读取指定的邮件的头部(Header)。为什么只读取头部呢?头部的字节数比较少,从中可以了解一些信息,比如邮件的主题、发信人、接收时间。有时根据一些字段(比如发信人、主题)就可以决定是否要下载整个邮件,这样可以加快遍历。如果邮件比较大(尤其是带有大附件的时候)下载整个邮件是需要比较长的时间的。
如果要下载附件,就是
mime = Mail_Message.ParseFromByte(message.MessageToByte());
Stream decodedDataStream = ((MIME_b_SinglepartBase)mime.Attachments[0].Body).GetDataStream();
检查 Attachments 的长度就知道有多少个附件了。不过关于附件在协议上是一个复杂的概念,例如附件有复合的附件、单独的附件等。一般以文件为附件的是单独类型的附件。
下载第二个附件就是 mime.Attachments[1] 。
string file = mime.Attachments[0].ContentType.Param_Name;
using (FileStream fs = File.Create(file ))
{ LumiSoft.Net.Net_Utils.StreamCopy(decodedDataStream, fs, 4000); }
mime.Attachments[0].ContentType.Param_Name; 是附件的文件名,也可以自定义。
另外一种比较简短的方法是:
mime = Mail_Message.ParseFromByte(message.MessageToByte());
byte[] bs=ss = ((MIME_b_SinglepartBase)mime.Attachments[0].Body).Data;
但此方法对于很大的附件例如 1G的附件可能会产生内存耗尽的问题。而采用流复制的方法则下载一部分就写到文件中一部分,不是一次性全下载到内存中。
关于UID
UID是邮件的标识,就像数组的下标一样。可以用 _POP3客户端.Messages[UID]引用指定的邮件。所以如果记录了UID,要想下载这个邮件就像索引数组那样简单,而不需要去对照邮件的字段例如 主题。
删除邮件
Messages.MarkForDeletion();
但这个删除操作是在释放客户端后才执行的。如果在正常的释放客户端资源之前发生异常,有可能不删除邮件。好像是因为没有接收到一个退出命令之前标记为删除的邮件是不会删除的。而客户端(指 POP3_Client 对象)在_POP3客户端.Dispose(); _POP3客户端 = null; 之前发生异常即可能意味着不能发出退出指令……
邮件的顺序
大体上,POP3_Client .Messages 中的对象其顺序是由时间顺序排列的,即先发的邮件排在前,后发的排在后。所以遍历操作先读到旧邮件。如果采用倒序方式来遍历,则先读到新邮件。
不过试验表明,在几分钟之内连续发的邮件,遍历到的顺序并不是按发邮件的时间排序的。例如:
2010-1-29 20:37:31 完成发送邮件:第 1 封邮件
2010-1-29 20:39:26 完成发送邮件:第 2 封邮件
2010-1-29 20:41:43 完成发送邮件:第 3 封邮件
2010-1-29 20:49:24 完成发送邮件:第 4 封邮件
2010-1-29 20:52:00 完成发送邮件:第 5 封邮件
2010-1-29 20:59:15 完成发送邮件:第 6 封邮件
2010-1-29 21:01:24 完成发送邮件:第 7 封邮件
2010-1-29 21:02:12 完成发送邮件:第 8 封邮件
2010-1-29 20:59:15 接收到邮件:第 6 封邮件
2010-1-29 20:41:43 接收到邮件:第 3 封邮件
2010-1-29 21:01:24 接收到邮件:第 7 封邮件
2010-1-29 20:49:23 接收到邮件:第 4 封邮件
2010-1-29 20:37:31 接收到邮件:第 1 封邮件
2010-1-29 20:39:25 接收到邮件:第 2 封邮件
2010-1-29 20:52:00 接收到邮件:第 5 封邮件
2010-1-29 21:02:12 接收到邮件:第 8 封邮件
但在大尺度时间范围,比如天与天之间的邮件则按时间顺序可以遍历:先读到旧邮件再到新邮件。可以考虑采用倒序方式遍历。
ares1986 2011-08-21
  • 打赏
  • 举报
回复
通过HttpRequest和HttpResponse可以做到
LMAOhuaNL 2011-08-21
  • 打赏
  • 举报
回复
貌似需要权限的吧
主要功能:
1.多用户注册各自使用,互不干予。
2.在自己的空间中上传多文件及大文件进行在线查看管理,可建多级目录存放。
3.文件目录多级共享,可共享整个用户空间。
4.树状显示系统功能和目录结构,操作方便。
5.界面模板和样式自定义并可由用户在前台选择喜爱的空间风格。
6.共享权限可设好友、所有人、指定人,并可指定共享类别、查看密码、列表修改删除下载等权限。
7.用户的共享目录和文件可自行设置外部空间处固顶和精华。
8.可以按名称、时间、大小、类型、注释、子目录等元素组合搜索文件
9.文件和目录可进行压缩解压ZIP操作,可以批量上传及批量下载文件
10.文件提取功能,可同时定义多个文件的提取码,提取码可个性化定义,并可限制下载次数及天数。
11.上传码功能,可定义一个目录的外部允许上传密码,访客可凭此密码上传到此目录。
12.文件转发功能,可将多个文件下载地址通过邮件或短信发送给他人下载,并可限制下载次数及天数。
13.在线编辑文本文件、播放任何影音文件、查看图片内容、对共享文件及目录添加文字注释功能。
14.在线编辑Word,Excel,PowerPoint文件
15.强大的在线图片编辑功能(缩放,旋转,水印,裁剪)。
16.类似Windows中的图片缩略图预览模式,方便查看图片。
17.注册用户有二级域名空间可以让访客随时访问自己的空间进行文件浏览下载。
18.访客可在外部空间处根据当前权限直接进行添加目录或上传文件
19.各种文件类型地址点击复制和短地址功能。
20.在空间中上传文件或添加外部网址两种方式。
21.好友功能,可将他人加为好友,并查看对方的指定好友文件及发送短消息。
22.可将好友组规划,并按组进行文件共享给指定组的好友。
23.可对自己的所有共享和提取进行查看及管理,批量修改或删除。
24.下载统计功能,可对各个用户下载的每个文件有明确的记录和统计。
25.上传统计功能,可对用户上传的每个文件做记录,监督非法文件
26.公共目录及公共文件区,显示每个用户共享给所有人的文件及目录列表并可下载。
27.用户可按等级权限自由绑定顶级域名代替外部空间地址,空间地址个性化。
28.用户空间个性化定义公告及标题显示,和对访客留言的查看及管理。
29.站内短信功能,提供收件箱、发件箱、已发送、垃圾箱功能。
30.用户空间中子帐号管理,可建多个相应操作权限的用户登录同一用户空间。
31.网银、支付宝、快钱、财付通,PayNow(台湾)在线支付,用户可任选支付,空间自动续费升级,别人代充,充值卡使用管理。
32.用户积功能, 可积兑换金币并可升级空间。
33.前台违法举报,实时对上传内容进行管理。
34.网站留言功能,用户可实时向管理员反馈信息,管理员后台回复。
35.自动过滤内容和禁传非法文件,防止不正当使用。
36.可针对不同等级,不同组的用户设置进入时公告。
37.批量用户管理操作,群发短信/邮件,可对列表中的所有用户统一一次操作。
38.后台实时查看及管理用户上传的所有文件
39.强大的用户查找,根据有效期、最后登录时间,审核及锁定,等级及组查找。
40.共享目录及共享文件查看及管理,未共享的文件不会列出,充份保护用户隐私。
41.用户等级制,可设每个等级的空间、上传大小及其它条数限制。
42.为每个等级设置下载速度上限、开启二级域名及等级费用。
43.用户组功能,可设定一组用户文件的存放盘符及路径,可前台选择,并可多网站管理。
44.允许/禁止的上传扩展名设定,编辑、查看、播放的扩展名设定功能。
45.注册审核、邮件验证、防重复IP注册、时长注册功能。
46.来访IP限制设定和管理员可登录的IP设定。
47.后台管理员可进行管理权限划并记录操作日志。
48.系统菜单的后台添加和管理。
49.回收站功能,并可在后台设置自动删除时间。
50.文件共享审核功能,杜绝用户共享非法文件
51.可直观设定目录、文件、用户、公告的外部调用参数,支持模板调用。
52.导入用户功能,支持ACCESS或Excel中导出的TXT格式信息,项目一次导入。
53.导出用户功能,可选择条件过滤导出,指定导出项目,导出成txt或Excel格式。
54.页面广告区添加及管理和客户端广告管理。
55.随时在线整理硬盘和数据库中的数据,保持数据最优化。
56.在线压缩及备份数据库功能。
57.管理员可自行制作文件下载详细信息页,放置各种广告代码。
58.完善的等级防盗链及流量控制功能。
59.支持大文件、多文件、断点续传、进度显示上传。
60.支持直接下载其它网站文件至空间,带详细进度显示功能。
61.可自动开通FTP帐号对应用户空间进行文件管理。
62.仅需为程序目录及用户存放目录设置写入及修改权限,系统更安全。
63.支持布式多台服务器协同管理。
64.完美兼容firefox等其它非IE内核浏览器。
65.三层架构模式开发,扩充及调用更方便。
66.内含ajax文件操作技术,更加提高用户体验,提高系统运行效率。
67.支持客户端软件管理。
68.简体版、繁体版、英文版三种版本。
69.可与《桃源相册管理系统》的用户进行整合。
70.标签及用户和文件信息的参数调用,可单独组合设计前台展示页面。
71.自带插件配置接口,支持插件开发和使用。

后台页面地址:admin/index.aspx,管理员用户名admin,密码admin,请登陆后修改。
数据库连接字符串在web.config文件中。

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧