Главная » Правописание слов » Как написать свой мессенджер delphi

Слово Как написать свой мессенджер delphi - однокоренные слова и морфемный разбор слова (приставка, корень, суффикс, окончание):


Морфемный разбор слова:

Однокоренные слова к слову:

Delphi

Наши проекты

Делаем примитивный чат на DELPHI

Автор: PROGER-ZONE

И я себе обещал, как изучу так выложу полную информацию по этой теме. Я делал свой чат на сокетах. По ним можно общаться, как по сети интернет, так и по локальной сети. Для этого вам достаточно знать Ip адрес. Программировал на Delphi7.

Установка необходимых компонентов

Так как я делал на delphi7, там не было по умолчанию тех компонентов, которые мне нужны. (ServerSocket1, ClientSocket1).
Для этого нужно добавить компоненты Сокета.

И указываем путь к пакету с компонентами, он находиться в корневом папке Delphi в паке Bin. У меня он находился в:

C:\Program Files\Borland\Delphi7\Bin\ dclsockets70.bpl

После такого добавления у вас в вкладке Internet должны появиться данные компоненты.

Размещение компонентов и написание кода

На форму я кинул такие элементы: ServerSocket1, ClientSocket1, Edit1 (для чата), Edit2 (для IP адреса сервера), Memo1 для отображения сообщения, ну и 3 кнопки.

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

После того как сервер был включен, клиент сможет подключиться к серверу.
Для этого он прописывает IP адрес сервера в Edit2, И нажимает кнопку соединиться:

Внимание : Клиент может только отправлять сообщение, а Сервер в свою очередь – принимать. Для двустороннего общения включите Клиента и Сервера на двух программах разного конца сети.

Для чтения сообщения, у сервера есть ожидание приема сообщения…вот она

Для отправки сообщения я написал в двух процедурах. Вот они:

Вот и всё! Примитивный Чат у вас готов. Далее ваша фантазия и умелые руки.

Обсудить на форуме

Источник

Мессенджер на Delphi7. Какие компоненты использовать?

Пишу мессенджер на Delphi7. Прошу помощи: как сделать пользовательский интерфейс примерно как в телеграме, ватсаппе и т.д.

1) Какие компоненты использовать чтобы при нажатии на i-ую вкладку слева изменялось окно чата справа? (я не придумал ничего лучше PageControl и tabPosition = tpLeft)

2) Как(на каком компоненте) отображать исходящие и входящие сообщения и скроллить их? (у меня вообще нет идей как это делать)

3) Как сделать облако сообщения? Я имею ввиду, чтобы сообщения отображались не сплошным текстом, а были отделены как-то (я не придумал ничего лучше как много tMemo’ов, т.е. для каждого сообщения свой tMemo)

Знающие люди, подскажите, подкиньте идей, пожалуйста
Буду очень благодарен

Через какие компоненты в Delphi7 подключаться к базе SQL Sqrver на сервере
Доброго времени суток. Подскажите, пожалуйста, через какие компоненты в Delphi7 подключаться к базе.

Какие компоненты использовать?
У меня есть теоретический материал, состоящий из 10 уроков Какие компоненты нужно использовать.

Какие компоненты Дельфи использовать?
Как называется данный элемент и возможно ли реализовать такое на делфи если да то с помощью чего

Игра 2048, какие компоненты использовать?
Здравствуйте. Необходимо написать приложение 2048, алгоритм я понял, как его реализовать используя.

Какие компоненты использовать в таком случае?
Здравствуйте. Есть такая задача, нужно будет создать БД, которой в дальнейшем будут пользоваться.

Источник

Shpirat

Лазяют там по своим интернетам, шпираты гребанные!

Desktop-ный чат на Delphi с поддержкой ников, комнат, статусов, проброса портов и клиент-серверной архитектурой (на сокетах)

Во времена службы в армии, был это 2013 год, начал я чатик тогда делать. Не помню, для чего и почему, но помню, что было интересно и увлекательно его делать. Оно и понятно! Когда сидишь и никуда не можешь уйти, когда свобода ограничена, мозг начинает из того, что есть, придумывать себе задания, чтоб не скучать. А задание это было, кстати, довольно крутым ?
Даже позже, когда уже закончилась служба в армии, часто вспоминал то время, как продуктивно получалось тогда что-то делать, потому что не было никаких отвлекающих факторов (ну, почти. Были ещё основные задания тоже, конечно же), и деться никуда не можешь, и люди не отвлекают. Плюс режим и распорядок дня тоже делали своё хорошее дело ?
Даже мысли потом бывали, что было бы круто сделать армию чисто для программистов, где есть и распорядок дня, и физическая подготовка (это тоже важно для мозгов), и в остальное время сидишь и пилишь код! Это было бы круто!
Но что-то я немножко от темы отступил, слишком длинное предисловие получилось…

Так вот! Чатик ещё не доделан до конца до сих пор, но пользоваться им уже можно, потому что основной функционал уже присутствует и работает, а именно:

Ну, если кратко, то вот это и был основной список возможностей данного чата.
Вот немного скриншотов его работы:

Некоторые настройки чатика
Многооконный режим чатика и общая комната
Вход в защищённую паролем комнату
Список мостов (ещё не работает, но так должно выглядеть)
Добавление моста (это работает). Есть возможность сохранять их и быстро подключаться потом
Автодополнение команд в консольке (нажать Ctrl+Space)

Автодополнение пока что работает только в консольке, которая отдельно. А сама консолька ничего не выводит — не доделано это. Но автодополнения нет в поле для ввода текста. Но это всё ещё впереди! Зато в текстовом поле для ввода сообщение можно нажимать Ctrl+Стрелка_Вверх или Ctrl+Стрелка_Вниз, чтобы прокручивать историю сообщений.
В консольке можно команды вводить просто, а в поле для ввода сообщений команды нужно начинать со слеша (/).

Поддерживаются следующие команды:

Вы, конечно, можете сказать: «Камон! Какой нафиг чат?! Сейчас 2018 год на дворе, соц-сети существуют, куча разных мессенджеров, зачем ещё что-то?!». А я вам скажу, что это было интересно делать, да и иметь свой собственный чат, в котором ты ни от кого не зависишь и можешь делать всё так, как нравится — это в любом случае круто! Да и всё же, с приходом разных этих мессенджеров и соц-сетей с кучей эмоджи и стикеров, а также голосовых сообщений и всего такого, мне кажется, немного потерялся этот особый дух текстовых сообщений (не знаю, как его правильно назвать). И конечно, я не агитирую за переход на этот чат, просто нашёл свой старый проект, снова его запустил, и даже используем тут с некоторыми людьми, но это не означает, что я против соц-сетей и других мессенджеров )
Просто это как-то помогает немного вернуть ту атмосферу, и нам это нравится ?

Если кому интересно, то сейчас у меня запущен чатный сервер, вот настройки для подключения, кто хочет опробовать:

Адрес: pc.karamush.ru
Порт: 25366
На текущий момент (на 08.07.018) пока всё ещё запущено и работает, в ближайшее время отключать не собираюсь.

[UPD 29.03.019]: из-за происков провайдера теперь нет возможности держать у себя сервер, т.к. не всегда выдаётся белый IP-адрес, так что скачивайте и пробуйте, всё прекрасно работает (из того, что уже сделано ? ).

Единственный минус — всё это только под винду, написано на Delphi 7 с использованием некоторых дополнительных визуальных компонентов (всё будет в архиве). А сетевая часть использует библиотечку Synapse.

Кстати-кстати! Пока я этот чат писал тогда, в армии, я вёл текстовый документ с логом разработки develog.txt. Туда я записывал свои мысли, эксперименты, текущий прогресс, результаты. В общем, когда сейчас вспомнил про этот чатик, решил всчитнуть этот девелог, и там так интересно было! Очень прикольное ощущение, когда читаешь то, что я там хотел сделать, а теперь оно всё есть и работает! А некоторые решения были не очень хорошими, поэтому об этом там тоже написано, и это убрано и не используется. В общем, довольно интересное чтиво. Криминальное ?

А вот и исходнички и отдельно бинарники!

Вот архив с клиентом и сервером, а также необходимыми для работы SSL библиотеками, которые нужно поместить в папку программы или в системную папку:
ichat_binaries.zip

А вот тут архив со всеми исходниками, develog-ом, а также необходимыми компонентами и либами (надеюсь, всё, что нужно, поместил):
ichat_sources.zip

[UPD 29.03.019]: по просьбе одного из пользователей сделал небольшую доработку, так что теперь можно просматривать список комнат не только в файловом менеджере, но из главного окошка, из меню «Комнаты->Список комнат». Так что теперь отдельное окошко со списком комнат, с отображением некоторой информации о них, с возможностью обновить этот список и войти в любую выбранную комнату )

Выглядит это вот так:

Список комнат, оо да )

Там просто обновлённые бинарники сервера и клиента, причём, сжатые UPX-ом зачем-то, для меньшего размера, хотя, в наше время быстрого интернета… Ну да ладно )

Надеюсь, было полезно и интересно! Если что, можете в комментариях писать, либо в ВК (если найдёте, хехе), если что-то вдруг будет не так или надо будет что-то добавить или исправить. )

Приятного использования! И не забывайте: сервер чата пока что запущен, так что можно опробовать ?

Источник

«хочу Как Дуров»: Пишем Простой Мессенджер

Sascha

Заместитель Администратора

В последнее время растёт популярность приложений для обмена сообщениями. Пользователи предпочитают мессенджеры, потому что они позволяют взаимодействовать в режиме реального времени. В этой статье мы разберём процесс создания простого приложения для обмена мгновенными сообщениями. Не будем сильно углубляться в нюансы разработки: мы напишем рабочий мессенджер, который в дальнейшем можно будет улучшить.

Используемые технологии и инструменты

Структура будущего приложения выглядит примерно так:

, скачайте её и скопируйте в папку lib каталога Client.

Чтобы сделать пользовательский интерфейс приложения привлекательнее, вы можете воспользоваться любой CSS-библиотекой. Скачайте её и скопируйте в lib.

Шаг 1. Запуск проекта

Перейдите в каталог Server и выполните команду:

Она запустит новый проект.

Укажите все необходимые сведения. В результате будет создан файл package.json примерно следующего вида:

<
«name»: «chat»,
«version»: «1.0.0»,
«description»: «Chat application»,
«main»: «server.js»,
«scripts»: <
«test»: «echo \»Error: no test specified\» && exit 1″
>,
«author»: «Your name»,
«license»: «ISC»
>

Шаг 2. Установка зависимостей

Выглядеть они будут примерно так:

Шаг 3. Создание сервера

Создадим сервер, который обслуживает порт 3000 и возвращает HTML-файл при вызове. Для инициализации нового соединения сокету нужно передать HTTP-объект. Событие connection будет прослушивать входящие сокеты, каждый сокет будет выпускать событие disconnect, которое будет вызвано при отключении клиента. Мы будем использовать следующие функции:

socket.on(‘event’, function(msg)<>)
io.emit(‘event’, ‘message’)

Создайте сервер с именем server.js. Он должен:

var app = require(‘express’)();
var http = require(‘http’).Server(app);
var io = require(‘socket.io’)(http);

app.get(‘/’, function(req, res) <
res.sendfile(‘index.html’);
>);

io.on(‘connection’, function(socket) <
console.log(‘user connected’);
socket.on(‘chat message’, function(msg) <
io.emit(‘chat message’, msg);
>);
socket.on(‘disconnect’, function() <
console.log(‘user disconnected’);
>);
>);

http.listen(3000, function() <
console.log(‘listening on *:3000’);
>);

Создайте файлы index.html в каталоге Client, style.css в каталоге CSS и app.js в каталоге js.

Пусть это будет простой HTML-код, который получает и отображает наши сообщения.

Источник

Простой UDP-чат на Delphi (WinSock)

Эта статья из серии сетевого программирования.

О протоколе UDP

В целом UDP можно назвать ненадёжным протоколом без постоянного соединения. Он не имеет никаких дополнительных средств по управлению передаваемых пакетов. Т.е. пакеты могут теряться и менять порядок следования. Это не значит что на UDP нельзя реализовать чего-то надёжного в плане соединения, просто все необходимые функции по организации и охране передачи пакетов должен реализовать сам программист в самом приложении(если это шибко требуется).

Т.к. UDP не имеет постоянного соединения, то отправить данные можно в любой момент, по любому адресу, такой подход очень удобен в некоторых ситуациях, правда нет какой-либо проверки целостности канала.

Теперь о том, что передаёт UDP и как эти данные для передачи в нём представлены.

UserDatagramProtocol – протокол пользовательских дейтаграмм.

Дейтаграмма – это, своего рода, атомарный передаваемый пакет. Каждая команда посылки данных создаёт одну дейтаграмму. Каждая операция чтения данных из буфера принимающего сокета возвращает одну дейтаграмму. Если например в буфере принимающего сокета накопилось несколько дейтаграмм, то потребуется столько же операций чтения.

При отправке данных, указывается IP адрес и порт принимающего сокета получателя. Сама дейтаграмма состоит из заголовка и тела. Заголовок всегда занимает 8 байт, таким образом максимальный размер передаваемых данных равен 65507 байт.

Достоинства протокола UDP – это простота установления связи, возможность посылки данных на несколько адресов через один сокет и нет необходимости устанавливать связь при разрыве канала связи. Так же через UDP можно отправлять широковещательные дейтаграммы. Для этого указываем широковещательный IP адрес, например для локальной сети: 192.168.255.255 и вперёд. Такую дейтаграмму получат все сокеты которые привязаны к порту, указанному отправителем.

В общем получается, что UDP обычно можно юзать(а порой даже удобнее) там, где незначительная потеря пакетов не критична. А так же очень удобна широковещательная рассылка, когда заранее программа не знает адресатов, но знает порт и область применения, например сетевой чат, написанием которого мы и займёмся.

Теперь о некоторых деталях реализации:

Например, из-за отсутствия постоянного соединения, на сервере одной сетевой игры, я держал экземпляры клиентов как связку IP:Port + присвоенный сервером id, т.е. в менеджере посылки пакетов (на сервере) использовалась эта связка. А для проверки на отключение клиента проверял время задержки запросов пинга от клиента, например 45 секунд, если запросы пинга от клиента не приходили, то значит он отключился, при этом 45 секунд его присутствие ещё сохранялось на сервере.

Более подробную техническую информацию по протоколу UDP не сложно найти в интернете: UDP(wiki).

Простой чат на UDP

Перейдём к практике — напишем простенький сетевой чат на WinSock и UDP используя Delphi.

Далее следует пошаговое рассуждение затрагивающее основные элементы при написании программы.

Прежде чем писать сетевое взаимодействие, необходимо определиться с форматом передаваемых данных. От этого зависит формат нашего сетевого пакета. Мы пишем простой чат на UDP протоколе, поэтому возьмём за формат данных строку, которая будет передаваться одной дейтаграммой.

Для работы с сокетами в Delphi нам потребуется лишь одна библиотека, которая входит в стандартный набор: uses WinSock.

Наладим систему оповещения об ошибках сокетов функцией GetErrorString, которая будет возвращать текстовое сообщение об ошибки по коду ошибки с помощью системной функции FormatMessage.

Источник

Теперь вы знаете какие однокоренные слова подходят к слову Как написать свой мессенджер delphi, а так же какой у него корень, приставка, суффикс и окончание. Вы можете дополнить список однокоренных слов к слову "Как написать свой мессенджер delphi", предложив свой вариант в комментариях ниже, а также выразить свое несогласие проведенным с морфемным разбором.

Какие вы еще знаете однокоренные слова к слову Как написать свой мессенджер delphi:



Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *