user.cs
上传用户:yan_wy
上传日期:2007-06-09
资源大小:112k
文件大小:2k
源码类别:

ICQ/即时通讯

开发平台:

C#

  1. using System;
  2. using System.Windows .Forms ;
  3. using System.Net.Sockets;
  4. using System.IO;
  5. using System.Threading ;
  6. namespace qq
  7. {
  8. /// <summary>
  9. /// user 的摘要说明。
  10. /// </summary>
  11. public class user
  12. {
  13. System.Net .Sockets .TcpClient  client;
  14. System.Net.Sockets .NetworkStream socketstream;
  15. Form1 server;
  16. BinaryWriter writer;
  17. BinaryReader reader;
  18. Thread outputThread;
  19. public int isline;
  20. public user(Form1 servervalue)
  21. {
  22. //
  23. // TODO: 在此处添加构造函数逻辑
  24. //
  25. try
  26. {
  27. server=servervalue;
  28. isline=1;
  29. client=new TcpClient (this.server.ip,5000);
  30. socketstream=client.GetStream();
  31. writer=new BinaryWriter (socketstream);
  32. reader=new BinaryReader(socketstream);
  33. this.outputThread =new Thread (new ThreadStart (run));
  34. outputThread.Start ();
  35. }
  36. catch(Exception ee)
  37. {
  38.   MessageBox.Show(ee.ToString());
  39. isline=0;
  40. }
  41. }
  42. public void run()
  43. {
  44. while(true)
  45. {
  46. string s1=reader.ReadString();
  47. string s2=reader.ReadString();
  48. string s3=reader.ReadString();
  49. foreach(UserControl1 dt in server.userlist)
  50. {
  51. if(dt.uid==s1)
  52. {
  53. if(s3.Trim()=="上线通知")
  54. {
  55. dt.setm(0);
  56. dt.timer.Start();
  57. }
  58. else if(s3.Trim()=="下线通知")
  59. {
  60. dt.setm(2);
  61. }
  62. else if(s3.Trim()=="发送文件")
  63. {
  64. dt.setup();
  65. }
  66. else
  67. {
  68. dt.tempxiao+=(s3+"n");
  69. dt.xiaoxi=true;
  70. dt.timer.Start();
  71. }
  72. break;
  73. }
  74. }
  75. }
  76. }
  77. public void close()
  78. {
  79. writer.Close();
  80. reader.Close();
  81. this.socketstream.Close();
  82. this.client.Close();
  83. }
  84. public void startset()
  85. {
  86.              
  87. writer.Write(server.userid);
  88. }
  89. public void sendmessage(string ab)
  90. {
  91. writer.Write(ab);
  92. }
  93. }
  94. }