Описание Windows-программы "Messenger"

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

начать чтение строки, переданной клиентомvoid StartRead()

{

//читаем по сети.BeginRead(, //куда помещать результат

, //смещение.Length , //размер буффера, //делегат обратного вызова); //локальный объект состояния

}

//получив обратый вызов, этот метод выводит

//строку на экран и отсылает ее клиентуrecord_results(string data, string outName)

{fout = new FileStream(outName, FileMode.OpenOrCreate);sr = new StreamReader(fout);old = sr.ReadToEnd();.Close();.Close();= old + data;= new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);st = new StreamWriter(fout);.Write(data);.Close();.Close();

}void onReadComplete(IAsyncResult ar)

{temp = networkStrem.EndRead(ar);

//если получена строка(temp > 0)

{

//преобразуем строку в имя файлаs = System.Text.Encoding.ASCII.GetString(buffer, 0, temp);

//выводим на экран.WriteLine("say client: {0}", s);result ="==>"+ s;_results(result, "C:/temp/LOGS.txt");

}

{.WriteLine("Read connection dropped");.Close();.Close();= null;= null;

}

}

}void Main(string[] args)

{server = new NetworkServer();.Run();

}void Run()

{host = Dns.GetHostName();ipE = Dns.GetHostEntry(host);[] ipA = ipE.AddressList;(int i = 0; i < ipA.Length; i++)

{.WriteLine(ipA[i].ToString());

}

//создаем объект для считывания информации с портаtcpListener = new TcpListener(ipA [0],8001);

//запускаем порт на прослушку.Start();

//слушаем порт(; ; )

{

//по запросу клиента устанавливаем соединение

//и возвращаем новый сокет и продолжаем слушатьsocketForClient = tcpListener.AcceptSocket();

//если соединение с клиентом установлено(socketForClient.Connected)

{.WriteLine("Client connected");handler = new clientHandler(socketForClient);

//вызываем вспомогательный метод для приема сообщений.StartRead();

}

}

}

}

 

CLIENT

System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;System.Net;System.Net.Sockets;msg_Server

{partial class frmMsg : Form

{frmMsg()

{();

}void aboutToolStripMenuItem_Click(object sender, EventArgs e)

{about = new frmAbout();.ShowDialog(this);

}void exitToolStripMenuItem_Click(object sender, EventArgs e)

{.Close();

}NetworkStream streamToServer;void button1_Click(object sender, EventArgs e)

{

{serverName = txtIPserver.Text;tcpSocket = new TcpClient(serverName, 8001);= tcpSocket.GetStream();message;= txtMSG.Text;

//создаем объект StreamWriter и с его помощью

//отправляем строку на сервер.IO.StreamWriter writer = new System.IO.StreamWriter(streamToServer);.WriteLine(message);.Flush();.Close();

}{ txtMSG.Text = "server not found..."; }

}

}

}