上一篇:15秒:为ASP.NET应用缓存Oracle数据 >>
用ASP.Net写一个发送ICQ信息的程序
<% @ Page Language="C#" %>
<% @ Assembly Name="System.Net" %>
<% @ Import Namespace="System.Net" %>
<% @ Import Namespace="System.Net.Sockets" %>
<% @ Import Namespace="System.IO" %>
<% @ Import Namespace="System.Text" %>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e)
{
ICQ_Show.Text="如果提交后,在这里显示信息";
}
public void Send_Click(Object sender,EventArgs e)
{
string sendmsg;
string commandmsg;
//首先取得要发送的信息
commandmsg = "from="+ICQ_Name.Text+"&fromemail="+ICQ_Email.Text+"&subject=";
commandmsg += ICQ_Subject.Text+"&body="+ICQ_Message.Text+"&to="+ICQ_Number.Text
commandmsg += "&Send=Send+Message";
//然后就是组装全部的信息
sendmsg="POST /scripts/WWPMsg.dll HTTP/1.1\r\n";
sendmsg += "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,";
sendmsg += " application/vnd.ms-excel,";
sendmsg += " application/msword, application/vnd.ms-powerpoint, */*\r\n";
sendmsg += "Accept-Language: zh-cn\r\n";
sendmsg += "Content-Type: application/x-www-form-urlencoded\r\n";
sendmsg += "Accept-Encoding: gzip, deflate\r\n";
sendmsg += "User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 95)\r\n";
sendmsg += "Host: wwp.icq.com\r\n";
sendmsg += "Content-Length: " + commandmsg.Length + "\r\n";
sendmsg += "Connection: Keep-Alive\r\n\r\n";
sendmsg += commandmsg + "\r\n\r\n";
Byte[] arrMsg=Encoding.Default.GetBytes(sendmsg.ToCharArray());
//需要发送的信息处理完毕
//======下面就是发送这些信息=====
//首先是建立一个TCPClient 对象
TCPClient tcpc=new TCPClient();
if(0==tcpc.Connect("wwp.icq.com",80))
{
Stream sm = tcpc.GetStream();
sm.Write(arrMsg,0,sendmsg.Length);
StreamReader sr=new StreamReader(tcpc.GetStream(),Encoding.Default);
string strRev=sr.ReadLine();
if(strRev.IndexOf("OK")!=-1)
{
ICQ_Show.Text="ICQ消息发送成功";
}
else
{
ICQ_Show.Text="ICQ消息发送不成功";
}
}
else
{
ICQ_Show.Text="ICQ消息发送不成功,无法联结ICQ服务器";
}
//关闭TCP联结
tcpc.Close();
}
</script>
<html>
<meta http-equiv="Content-Language" content="zh-cn">
<head>
<title></title>
</head>
<body>
<form runat="server" >
<table>
<tr><td align=center colspan=2>
<asp:Label id="ICQ_Show" runat="server" ForeColor="red" /></td></tr>
<tr><td><br></tr>
<tr><td align=center colspan=2>发送ICQ信息</td></tr>
<tr><td>您的ICQ号:</td><td><asp:TextBox id="ICQ_Number" runat="server" /></td></tr>
<tr><td>您的网名:</td><td><asp:TextBox id="ICQ_Name" runat="server" /></td></tr>
<tr><td>您的Email:</td><td><asp:TextBox id="ICQ_Email" runat="server" /></td></tr>
<tr><td>发送主题:</td><td><asp:TextBox id="ICQ_Subject" runat="server" /></td></tr>
<tr><td>发送内容:</td><td><asp:TextBox id="ICQ_Message" runat="server" /></td></tr>
<tr><td><asp:Button OnClick="Send_Click" Text="发送ICQ信息" RunAt="server" /></td></tr>
</table>
</form>
</body>
</html>
下一篇:ASP.NET 开发聊天室程序(英文) >>
相关文章:
- · 从 .NET 程序集提供图像(二)
- · 从 .NET 程序集提供图像(一)
- · 用ASP.NET设计优秀系统(一)
- · Henry手记 - Datagrid键盘事件响应(二)
- · Henry手记 - Datagrid键盘事件响应(一)
- · 在ASP.NET下实现数字和字符相混合的验证码(C# Code)
- · 在ASP.NET下实现数字和字符相混合的验证码(vb.net Code)
- · 大数据量下的分页
- · 让Asp.NET的DataGrid可排序、可选择、可分页
- · 利用ASP.NET DataGrid显示主次关系的数据
- · 如何使用PagedDataSource來做DataRepeater的分頁的效果
- · ASP .NET 中的身份验证:.NET 安全性指导
- · 在Asp.Net中从sqlserver检索(retrieve)图片
- · 如何在ASP.Net 中把图片存入数据库
- · 在两个ASP.NET页面之间传递值
- · 用ASP.NET构建完整E-mail发送系统
- · 用ASP.NET开发Web服务的五则技巧
- · 在两个ASP.NET页面之间传递值
- · 用DataReader还是DataSet?
- · 使用Mobile控件
- · 用javascript解决ASP.NET服务器控件造成的刷新问题
- · ASP.NET相关问题14问
- · ASP.NET中水晶报表的使用
- · ASP.NET编程中的十大技巧
- · 浅谈在ASP.NET中数据有效性校验的方法
- · 一个文件上传的类
- · ASP.NET中使用Caching
- · ASP.NET里的事务处理
- · ASP.NET中在线用户统计
- · 在ASP.net中使用OWC绘制统计图表
- · ASP.NET四种页面导航方式之比较与选择
- · 浅谈 XmlReader
- · 动态的管理ASP.NET DataGrid数据列
- · ASP.NET中的ViewState
- · asp.net上传图片并同时生成缩略图
- · ASP+全新接触(3) {转}
- · ASP+全新接触(4) {转}
- · 在ASP+ 中我们如何使用 Class 而不是组件
