快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用ASP.Net写一个发送ICQ信息的程序

这里我给大家提供一个很实用的例子,就是在线发送ICQ信息。想一想我们在网页上直接给朋友发送ICQ信息,那是多么美妙的事情啊。呵呵,在吹牛啊,其实ICQ本来就有在线发送的代码,不过,这些都是AOL给你写好的代码,多没有意思啊。还是自已写的比较好,呵呵,废话少说,大家来看代码吧 <br>
<br>
<% @ Page Language=\"C#\" %> <br>
<% @ Assembly Name=\"System.Net\" %> <br>
<% @ Import Namespace=\"System.Net\" %> <br>
<% @ Import Namespace=\"System.Net.Sockets\" %> <br>
<% @ Import Namespace=\"System.IO\" %> <br>
<% @ Import Namespace=\"System.Text\" %> <br>
<br>
<Script Language=\"C#\" Runat=\"Server\"> <br>
public void Page_Load(Object src,EventArgs e) <br>
{ <br>
ICQ_Show.Text=\"假如提交后,在这里显示信息\"; <br>
} <br>
<br>
public void Send_Click(Object sender,EventArgs e) <br>
{ <br>
string sendmsg; <br>
string commandmsg; <br>
//首先取得要发送的信息 <br>
commandmsg = \"from=\"+ICQ_Name.Text+\"&fromemail=\"+ICQ_Email.Text+\"&subject=\"; <br>
commandmsg += ICQ_Subject.Text+\"&body=\"+ICQ_Message.Text+\"&to=\"+ICQ_Number.Text <br>
commandmsg += \"&Send=Send+Message\"; <br>
//然后就是组装全部的信息 <br>
sendmsg=\"POST /scripts/WWPMsg.dll HTTP/1.1/r/n\"; <br>
sendmsg += \"Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,\"; <br>
sendmsg += \" application/vnd.ms-excel,\"; <br>
sendmsg += \" application/msword, application/vnd.ms-powerpoint, */*/r/n\"; <br>
sendmsg += \"Accept-Language: zh-cn/r/n\"; <br>
sendmsg += \"Content-Type: application/x-www-form-urlencoded/r/n\"; <br>
sendmsg += \"Accept-Encoding: gzip, deflate/r/n\"; <br>
sendmsg += \"User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 95)/r/n\"; <br>
sendmsg += \"Host: wwp.icq.com/r/n\"; <br>
sendmsg += \"Content-Length: \" + commandmsg.Length + \"/r/n\"; <br>
sendmsg += \"Connection: Keep-Alive/r/n/r/n\"; <br>
sendmsg += commandmsg + \"/r/n/r/n\"; <br>
<br>
Byte[] arrMsg=Encoding.Default.GetBytes(sendmsg.ToCharArray()); <br>
//需要发送的信息处理完毕 <br>
<br>
//======下面就是发送这些信息===== <br>
//首先是建立一个TCPClient 对象 <br>
TCPClient tcpc=new TCPClient(); <br>
if(0==tcpc.Connect(\"wwp.icq.com\",80)) <br>
{ <br>
Stream sm = tcpc.GetStream(); <br>
sm.Write(arrMsg,0,sendmsg.Length); <br>
StreamReader sr=new StreamReader(tcpc.GetStream(),Encoding.Default); <br>
string strRev=sr.ReadLine(); <br>
if(strRev.IndexOf(\"OK\")!=-1) <br>
{ <br>
ICQ_Show.Text=\"ICQ消息发送成功\"; <br>
} <br>
else <br>
{ <br>
ICQ_Show.Text=\"ICQ消息发送不成功\"; <br>
} <br>
<br>
} <br>
else <br>
{ <br>
ICQ_Show.Text=\"ICQ消息发送不成功,无法联结ICQ服务器\"; <br>
} <br>
//关闭TCP联结 <br>
tcpc.Close(); <br>
} <br>
<br>
</script> <br>
<html> <br>
<meta http-equiv=\"Content-Language\" content=\"zh-cn\"> <br>
<head> <br>
<title></title> <br>
</head> <br>
<body> <br>
<form runat=\"server\" > <br>
<table> <br>
<tr><td align=center colspan=2> <br>
<asp:Label id=\"ICQ_Show\" runat=\"server\" ForeColor=\"red\" /></td></tr> <br>
<tr><td><br></tr> <br>
<tr><td align=center colspan=2>发送ICQ信息</td></tr> <br>
<tr><td>您的ICQ号:</td><td><asp:TextBox id=\"ICQ_Number\" runat=\"server\" /></td></tr> <br>
<tr><td>您的网名:</td><td><asp:TextBox id=\"ICQ_Name\" runat=\"server\" /></td></tr> <br>
<tr><td>您的Email:</td><td><asp:TextBox id=\"ICQ_Email\" runat=\"server\" /></td></tr> <br>
<tr><td>发送主题:</td><td><asp:TextBox id=\"ICQ_Subject\" runat=\"server\" /></td></tr> <br>
<tr><td>发送内容:</td><td><asp:TextBox id=\"ICQ_Message\" runat=\"server\" /></td></tr> <br>
<tr><td><asp:Button OnClick=\"Send_Click\" Text=\"发送ICQ信息\" RunAt=\"server\" /></td></tr> <br>
</table> <br>
</form> <br>
<br>
<br>
</body> <br>
</html> <br>
<br>
<br>
开始显示是这个样子: <br>
<br>
 假如提交后,在这里显示信息 <br>
<br>
<br>
发送ICQ信息 <br>
您的ICQ号: <br>
您的网名: <br>
您的Email: <br>
发送主题: <br>
发送内容: <br>
<br>
<br>
<br>
按下\"发送ICQ信息\"键后的显示是: <br>
<br>
 ICQ消息发送成功 <br>
<br>
<br>
发送ICQ信息 <br>
您的ICQ号: <br>
您的网名: <br>
您的Email: <br>
发送主题: <br>
发送内容: <br>
<br>
<br>
<br>
相信大家能看懂上面的程序,我已经加了注释,应当没有问题吧。呵呵。其实这个程序也不过是在走AOL在线代码的老路,只是写了个程序模仿了POST方式。不过这个已经足够了,我们写程序时也就不必为那个POST如表示来烦人了。 <br>
<br>
有了ICQ信息,肯定不少朋友会问到OICQ,究竟在海内OICQ是老大。但是很不幸,腾讯公司并没有给我们提供接口,我写信去问,他们告诉我没有提供,其实我也搞到一个,是通过WAP方法搞到的。但是这个不太好,只能是向腾讯公司发通知的那种形式出现,很不好玩,而且还必须网友在线才能收到,太没有意思了。本来也想通过UDP直接来写,但是实在不知道,这个数据包中要填些什么东东去验证,所以也没有办法,假如哪位朋友知道,请您写信给我,我也在waiting着啊。 <br>
<br>
关于这个发ICQ信息的例子示范,我把它放在 http://aspx1.brinkster.com/feidao/code/Qicq.aspx 上了,大家有爱好去看一下,呵呵。 <br>
返回类别: 教程
上一教程: 使用 Visual C# .NET 向 Microsoft Excel 2002 传输 XML 数据
下一教程: .net缓存应用与分析

您可以阅读与"用ASP.Net写一个发送ICQ信息的程序"相关的教程:
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(三)
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(二)
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(一)
· 用ASP.Net编写的查询域名的程序
· 用asp.net编写的上传程序
    微笑服务 优质保证 索取样品