À¶ÐÅ×Ó ·¢±íÓÚ 2008-12-24 11:59:47

ʹÓÃC#½øÐеã¶ÔµãͨѶºÍÎļþ´«Êä

¡¡¡¡<b>·¢ËͲ¿·Ö£º</b>
¡¡¡¡·¢ËÍÔÛÃÇʹÓÃÁ˶àỊ̈߳¬¿ÉÒÔͬʱ½øÐжà¸öÈÎÎñ£¬±ÈÈç·¢ËÍÎļþ¡¢·¢ËÍÎı¾µÈ£¬»¥²»Ó°Ï죺
¡¡¡¡
¡¡¡¡·¢ËÍÎı¾·½·¨£º
¡¡¡¡
¡¡¡¡private void StartSendText(string strHost,int iPort,string strInfo)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ SendText stText = new SendText(strHost,iPort,strInfo,new CommunClass.OnSend(OnSendDrawProgress)) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ StartThread(new ThreadStart(stText.Send)) ;
¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡ÏÂÃæÊÇËûµ÷ÓÃÓõ½µÄһЩ·½·¨£º
¡¡¡¡
¡¡¡¡¿ªÊ¼Ò»¸öÏß³Ì
¡¡¡¡
¡¡¡¡private void StartThread(ThreadStart target)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ Thread doStep = new Thread(target) ;¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ doStep.IsBackground = true ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ doStep.Start() ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡·¢ËÍÒ»²¿·Ö£¨±¾ÎÄÉèÖõÄÊÇ1024×Ö½Ú£©³É¹¦ºóµÄ»Øµ÷·½·¨
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡public void OnSendDrawProgress(int iTotal,int iSending)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ {¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ if (iTotal != pbMain.Maximum)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ pbMain.Maximum = iTotal ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡pbMain.Value = iSending ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡ÒòΪʹÓõÄÊÇỊ̈߳¬ËùÒÔ·¢ËÍÎı¾Ê¹ÓõÄÊÇÒ»¸ö·¢ËÍÎı¾ÀàµÄ·½·¨£¬¸ÃÀàÈçÏ£º
¡¡¡¡
¡¡¡¡public class SendText
¡¡¡¡
¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string Host ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private int Port ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string Info ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private CommunClass.OnSend onsend ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public SendText(string strHost,int iPort,string strInfo,
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CommunClass.OnSend onSend)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Host = strHost ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Port = iPort ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Info = strInfo ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡onsend = onSend ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public void Send()
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Socket s¡¡= null ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ s = CommunClass.ConnectToServer(Host,Port) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandToSocket(s,"SENDTEXT") ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandDescToSocket(s,"") ;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteDynamicTextToSocket(s,Info,onsend) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡catch (Exception e)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ MessageBox.Show(e.Message) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡finally
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ if (s != null)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s.Close() ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡ }//end class
¡¡¡¡
¡¡¡¡ÕâÑù¾Í¿ÉÒÔʹÓÃÒ»¸öÏ̷߳¢ËÍÎı¾ÁË¡£
¡¡¡¡
¡¡¡¡·¢ËÍÎļþµÄ·½·¨Ò²ÀàËÆ£º
¡¡¡¡
¡¡¡¡private void StartSendFile(string strHost,int iPort,string strFile)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ SendFile sfFile = new SendFile(strHost,iPort,strFile,this.pbMain) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ pbMain.Value = 0 ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ StartThread(new ThreadStart(sfFile.Send)) ;¡¡¡¡¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡<b>·¢ËÍÎļþµÄÀࣺ</b>
¡¡¡¡
¡¡¡¡public class SendFile
¡¡¡¡
¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string Host ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private int Port ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string FileToSend ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private ProgressBar pbar;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public SendFile(string strHost,int iPort,string strFile,ProgressBar pbMain)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Host = strHost ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Port = iPort ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡FileToSend = strFile ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡pbar = pbMain ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public void Send()
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Socket s¡¡= null ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ s = CommunClass.ConnectToServer(Host,Port) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandToSocket(s,"SENDFILE") ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandDescToSocket(s,"") ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteFileToSocket(s,FileToSend,new CommunClass.OnSend(OnSendDrawProgress)) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡catch (Exception e)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ MessageBox.Show(e.Message) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡finally
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ if (s != null)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s.Close() ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public void OnSendDrawProgress(int iTotal,int iSending)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if (iTotal != pbar.Maximum)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ pbar.Maximum = iTotal ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡pbar.Value = iSending ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }¡¡¡¡¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡ }//end class
¡¡¡¡
¡¡¡¡µ±È»£¬Äã·¢ËÍÒ»¸öÃüÁîÈ÷þÎñÆ÷¶ËÆô¶¯Ò»¸ö³ÌÐò£¨¿¿£¬Õâ²»³ÉľÂíÁËÂ𣿣©Ò²¿ÉÒÔ£º
¡¡¡¡
¡¡¡¡°³ÕâÀïÖ»¸ø³öÒ»²¿·Ö´úÂ룬ÆäÓàµÄÄú×Ô¼º¿ÉÒÔ·¢»ÓÒÔÏ£º
¡¡¡¡
¡¡¡¡public class ExeCuteFile
¡¡¡¡
¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string Host ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private int Port ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string FileName ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private string cmdParam ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public ExeCuteFile(string strHost,int iPort,string strFileName,string strCmdParam)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Host = strHost ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Port = iPort ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡FileName = strFileName ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cmdParam = strCmdParam ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ public void Send()
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ Socket s¡¡= null ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ s = CommunClass.ConnectToServer(Host,Port) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandToSocket(s,"EXECUTEFILE") ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteCommandDescToSocket(s,FileName) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CommunClass.WriteDynamicTextToSocket(s,"",null) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ MessageBox.Show(CommunClass.ReadDynamicTextFromSocket(s)) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡catch (Exception e)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ MessageBox.Show(e.Message) ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡finally
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ if (s != null)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s.Close() ;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡¡¡¡¡ }
¡¡¡¡
¡¡¡¡ÏÂÃæÊÇ·þÎñÆ÷¶Ë½ÓÊÜÐÅÏ¢µÄ´úÂ룺
¡¡¡¡
¡¡¡¡´´½¨¼àÌý£º
¡¡¡¡
¡¡¡¡/// <summary>
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ /// ÔÙ¸ø¶¨µÄÖ÷»úºÍ¶Ë¿ÚÉÏ´´½¨¼àÌý³ÌÐò
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ /// </summary>
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ /// <param name="strAddress"></param>
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ /// <param name="iPort"></param>
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡private void BuildingServer(string strAddress,int iPort)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ {
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡IPAddress ipAddress = Dns.Resolve(strAddress).AddressList;
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡try
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ listener =¡¡new TcpListener(ipAddress, iPort);¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡}
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡catch ( Exception e)
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡{
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ AddI <
Ò³: [1]
²é¿´ÍêÕû°æ±¾: ʹÓÃC#½øÐеã¶ÔµãͨѶºÍÎļþ´«Êä