Книга: C# для профессионалов. Том II
Пример TcpClient
Пример TcpClient
Клиент является простым приложением Windows, где можно вводить имя хоста и номер порта сервера. Это приложение использует класс TCPClient
для соединения с функционирующим сервером и получения возвращаемого сообщения для вывода его в текстовом поле. Внизу формы выводится статусная строка:
В этом коде используются инструкции using
:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Net;
using System.Net.Sockets;
using System.Text;
Мы также включаем ссылку на файл QuoteServer.dll
. Оставшаяся часть кода автоматически создается в IDL, поэтому он здесь не будет рассматриваться подробно. Основная функциональность клиента находится в обработчике нажатия кнопки Get Quote:
protected void buttonQuote_Click(object sender, System.EventArgs e) {
statusBar.Text = "";
string server = textBoxHostname.Text;
try {
int port = Convert.ToInt32(textBoxPortNumber.Text);
} catch (FormatException ex) {
statusBar.Text = ex.Message; return;
}
TcpClient client = new TcpClient();
try {
client.Connect(
textBoxHostname.Text, Convert.ToInt32(textBoxPortNumber.Text));
NetworkStream stream = client.GetStream();
byte[] buffer = new Byte[1024];
int received = stream.Read(buffer, 0, 1024);
if {received <= 0) {
statusBar.Text = "Read failed"; return;
}
texBoxQuote.Text = Encoding.Unicode.GetString(buffer);
} catch (SocketException ex) {
statusBar.Text = ex.Message;
} finally {
client.close();
}
}
Запустив тестовый сервер и клиент этого оконного приложения, можно протестировать функциональность. Успешное выполнение может дать следующий результат при использовании указанных на экране настроек:
Добавим серверу функциональность службы. Программа уже выполняется, что же нужно еще сделать? Необходимо, чтобы серверная программа автоматически запускалась во время начальной загрузки системы без какого-либо пользователя, зарегистрировавшегося в системе, и мы хотим управлять ею с помощью служебных управляющих программ.
- Пример установочного скрипта
- Пример из практики
- ПРИМЕР ПРОСТОЙ ПРОГРАММЫ НА ЯЗЫКЕ СИ
- Примеры получения статистики
- Пример применения метода «пять почему»
- Пример 12-8. Частота встречаемости отдельных слов
- 1.2.5. Пример программы
- Пример 17-10. Блочный комментарий
- Примеры
- 2. Пример создания базового отношения в записи на псевдокоде
- Пример 9-8. Содержимое $* и $@, когда переменная $IFS -- пуста
- Часть I На примере денег