О приложении к Лабораторной работе № 10



 

Получившуюся программу (LWP 10 DB . exe), собранную из кусков кода приведённых в данной лабораторной работе, три базы данных (LWP 10- DB - ODBC . mdb, LWP 10- DB - OLE . accdb и LWP 10- DB - OLE - Special . accdb), а также XML-файл для базы данных Wallpapper - DB . xml, использованные в данной работе можно загрузить по ссылке в конце этого материала (сслыка доступна в программном продукте).

 

Приложение: Исходный код программы и всех сопровождающих файлов с кодом приведён по ссылке в конце этого материала (сслыка доступна в программном продукте).

Варианты заданий: Варианты для выполнения самостоятельных заданий с использованием материала данной работы приведены по ссылке в конце этого материала (сслыка доступна в программном продукте).

Лабораторная работа № 11: Динамическая связь приложений через библиотеку классов

Лабораторная работа № 11: Динамическая связь приложений через библиотеку классов

 

Содержание

 

Вводная часть

Удалённый объект: создание библиотеки классов удалённого объекта

Клиент: создание приложения Windows Forms

Сервер: создание консольного приложения

Завершающая часть

О приложении к Лабораторной работе № 11

 

Вводная часть

 

В этой работе будет рассмотрена работа с динамически связанными приложениями. Нас интересует именно те случаи, когда одно приложение способно и может при необходимости передавать данные в другое приложение, причём оба приложения запущены в один и тот же момент и для передачи данных не используются временные файла на жёстком диске. Фактически приложения будут общаться друг с другом словно клиент и сервер. То есть это общение будет аналогично общению между удалёнными машинами (через протоколы HTTP, FTP или TELNET). Для реализации данной функциональности лучше всего использоваться так называемые «каналы».

Для чего может понадобится подобное? Динамическая связь приложений как удалённо, так и на локальной машине удобна для передачи малых объёмов информации. При этом данные передаются по защищённому каналу (данные можно предварительно зашифровать тем же MD 5-хэшем). Также, такая связь приложений не оставляет лишнего «мусора» изначально. А также, возможно реализовать удалённое взаимодействие клиента и сервера.

 

Что такое каналы?

 

Каналы используются инфраструктурой удалённого взаимодействия платформы .NET Framework для передачи удаленных вызовов. Если клиент вызывает удаленный объект, вызов «сериализуется» (перевод структуры данных в последовательность битов) в сообщение, которое отправляется по клиентскому каналу, а получается по каналу сервера. После получения сообщения, оно «десериализуется» и обрабатывается. Возвращаемые значения передаются по каналу сервера, а их получение производится по каналу клиента.

Класс IpcChannel является удобным классом, в котором сочетаются функциональные возможности класса IpcClientChannel и класса IpcServerChannel.

 

Для работы с каналами нам потребуются следующие пространства имён:

 

1. Обеспечивает реализацию канала, который использует протокол межпроцессорного взаимодействия для передачи сообщений.

Пространство имён: System.Runtime.Remoting.Channels.Ipc;

Сборка: System.Runtime.RemotingSystem.Runtime.Remoting.dll).

2. А также основные пространства имён:

System.Runtime.Remoting;

System.Runtime.Remoting.Channels;

 

Что такое IPC ?

Межпроцессное взаимодействие (Inter - Process Communication, IPC) — набор способов обмена данными между множеством потоков в одном или более процессах. Процессы могут быть запущены на одном или более компьютерах, связанных между собой сетью. IPC -способы делятся на методы обмена сообщениями, синхронизации, разделяемой памяти и удалённых вызовов (RPC). Методы IPC зависят от пропускной способности и задержки взаимодействия между потоками и типа передаваемых данных.

IPC также может упоминаться как межпотоковое взаимодействие (inter - thread communication), межпоточное взаимодействие и межпрограммное взаимодействие (inter - application communication). IPC наряду с концепцией адресного пространства является основой для разграничения адресного пространства.

 

Что будет представлять собой приложение, разрабатываемое в данной работе?

 

Первое приложение будет представлять собой окно пустое Windows Forms. Так будет реализован клиент. Реализация сервера будет в виде консольного окна. Удалённый объект будет сформирован в виде библиотеки классов. Всего три проекта и три готовых объекта, два из которых — приложения.

 


Дата добавления: 2019-09-13; просмотров: 137; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!