<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      ASP.NET發送ICQ消息DIY

      [摘要]這里我給大家提供一個很實用的例子,就是在線發送ICQ信息。想一想我們在網頁上直接給朋友發送ICQ信息,那是多么美妙的事情啊。呵呵,在吹牛啊,其實ICQ本來就有在線發送的代碼,不過,這些都是AOL給你...
      這里我給大家提供一個很實用的例子,就是在線發送ICQ信息。想一想我們在網頁上直接給朋友發送ICQ信息,那是多么美妙的事情啊。呵呵,在吹牛啊,其實ICQ本來就有在線發送的代碼,不過,這些都是AOL給你寫好的代碼,多沒有意思啊。還是自已寫的比較好,呵呵,廢話少說,大家來看代碼吧

      <% @ 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;
      file://首先取得要發送的信息
      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";
      file://然后就是組裝全部的信息
      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());
      file://需要發送的信息處理完畢

      file://======下面就是發送這些信息=====
      file://首先是建立一個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服務器";
      }
      file://關閉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>

        開始顯示是這個樣子:

          如果提交后,在這里顯示信息

            發送ICQ信息
      您的ICQ號: 
      您的網名:  
      您的Email: 
      發送主題:  
      發送內容:  

      按下"發送ICQ信息"鍵后的顯示是:

          ICQ消息發送成功


            發送ICQ信息
        您的ICQ號: 
        您的網名:  
        您的Email: 
        發送主題:  
        發送內容:  

        相信大家能看懂上面的程序,我已經加了注釋,應當沒有問題吧。呵呵。其實這個程序也不過是在走AOL在線代碼的老路,只是寫了個程序模擬了POST方法。不過這個已經足夠了,我們寫程序時也就不必為那個POST如表示來煩人了。

        有了ICQ信息,肯定不少朋友會問到OICQ,畢竟在國內OICQ是老大。但是很不幸,騰訊公司并沒有給我們提供接口,我寫信去問,他們告訴我沒有提供,其實我也搞到一個,是通過WAP方式搞到的。但是這個不太好,只能是向騰訊公司發通知的那種形式出現,很不好玩,而且還必須網友在線才能收到,太沒有意思了。本來也想通過UDP直接來寫,但是實在不知道,這個數據包中要填些什么東東去驗證,所以也沒有辦法,如果哪位朋友知道,請您寫信給我,我也在waiting著啊。

        關于這個發ICQ信息的例子示范,我把它放在 http://aspx1.brinkster.com/feidao/code/Qicq.aspx 上了,大家有興趣去看一下,呵呵。


      日韩精品一区二区三区高清