|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
|||||||||||
.NET 4.x Технология клиент-сервер. Классы клиента и сервера. Обсуждение16.10.2011, 16:02. Показов 36999. Ответов 107
Метки нет (Все метки)
В данном теме выкладываю свои классы клиента и сервера, а так же простеньких примеров реализованных на этих классах. Жду конструктивной критики, идей, предложений по улучшению, оптимизации и прочего.
Так же прошу поправлять меня, если комментарии в коде не соответствуют реальной действительности. Комментировал то как я это понимаю. P.S. с орфографией тоже туговато, так что исправляем ![]() Класс СЕРВЕРА.
Класс КЛИЕНТА
Сообщение в разработке. Примеры будут чуть позже.
35
|
|||||||||||
| 16.10.2011, 16:02 | |
|
Ответы с готовыми решениями:
107
Как вызвать Disconnect клиента (Технология Клиент-Сервер) Чат "Сервер-клиент". На сервер не могу отправить сообщение с клиента Http сервер и клиент. При попытке получить ответ клиента от сервера ошибка: Поток был недоступен для чтения |
|
Студент :)
895 / 328 / 12
Регистрация: 29.01.2011
Сообщений: 1,679
|
|
| 17.10.2011, 19:08 | |
|
0
|
|
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
||||||||||||||||
| 17.10.2011, 19:11 [ТС] | ||||||||||||||||
3
|
||||||||||||||||
|
30 / 30 / 3
Регистрация: 25.05.2011
Сообщений: 308
|
|
| 17.10.2011, 23:39 | |
|
А такой вопрос... Как отправить определенную команду на клиент который был запущен с определенного IP?
Допустим клиент запустили с 5-ти разных компов... На сервер мне пришли их IP... И мне надо на определенный IP допустим послать команду на закрытие того клиента...
0
|
|
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
||||||
| 19.10.2011, 11:12 [ТС] | ||||||
Сообщение было отмечено как решение
Решение
5
|
||||||
|
30 / 30 / 3
Регистрация: 25.05.2011
Сообщений: 308
|
|
| 20.10.2011, 19:57 | |
|
Простите мою тупрость... Но я так и не понял как при этих классах написать команду от сервера клиенту что бы клиент закрывался
...
0
|
|
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
||||||||||||
| 20.10.2011, 20:21 [ТС] | ||||||||||||
Сообщение было отмечено как решение
Решение
А на сервере просто отправляем команду "CLOSE;" всем или нужному клиенту. Клиент получив и проверив пакет, делает нужные действия. Обработав в данном случае
3
|
||||||||||||
|
37 / 37 / 2
Регистрация: 11.11.2011
Сообщений: 423
|
|
| 17.02.2012, 14:11 | |
|
Я так понимаю,нужно привязывать каждую процедуру к элементу управления.Это так?
0
|
|
|
12 / 12 / 0
Регистрация: 06.05.2011
Сообщений: 250
|
|
| 19.02.2012, 00:57 | |
|
почему когда я закрываю сервер он в процесе висит?
0
|
|
|
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
|
|
| 19.02.2012, 01:15 | |
|
chiribas, при закрытии формы - событие FormClosing закрывай все сокеты и соединения, да и до закрытия формы тоже старайися закрыть все подключения
1
|
|
|
12 / 12 / 0
Регистрация: 06.05.2011
Сообщений: 250
|
||||||
| 19.02.2012, 11:58 | ||||||
|
Почему на одном компьютере соединение устанавливается, а на разных нет?
На клиенте
0
|
||||||
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
||
| 19.02.2012, 14:18 [ТС] | ||
0
|
||
|
12 / 12 / 0
Регистрация: 06.05.2011
Сообщений: 250
|
|
| 19.02.2012, 15:30 | |
|
0
|
|
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
|
| 20.02.2012, 13:26 [ТС] | |
|
Нужны хотя бы ошибки, больше информации. В интернете данные клиент\сервер проверялись, всё работало. Смотрите открытость портов. Не находится ли сервер за NATом.
0
|
|
|
12 / 12 / 0
Регистрация: 06.05.2011
Сообщений: 250
|
||||||
| 20.02.2012, 14:41 | ||||||
|
Если после того как я запустил сервер в котором
Добавлено через 52 минуты а если сервер находится за nat'ом, то что делать?(у меня usb мегафон-модем)
0
|
||||||
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
|||
| 21.02.2012, 03:37 [ТС] | |||
1
|
|||
|
43 / 43 / 5
Регистрация: 12.11.2011
Сообщений: 445
|
|||||||||||
| 11.03.2012, 22:06 | |||||||||||
|
У меня иногда крашится сервер
вылетает на этой строке такое сообщение Ошибка Коллекция была изменена; невозможно выполнить операцию перечисления.
0
|
|||||||||||
|
2 / 2 / 0
Регистрация: 28.11.2010
Сообщений: 14
|
|
| 14.03.2012, 18:49 | |
|
Классы бесподобны, одна радость!
но... Сколько не бился, не могу заставить выполнять какие-либо действия с объектами на форме, или чем то подобным.. например, обрабатываю событие OnRead на сервере, смотрю, если data = HIDE, выполняю Form2.Hide, из-за чего клиент грандиозно отрубается, а сервер ругается: Проблема соединения: An error occurred creating the form. See Exception.InnerException for details. The error is: ActiveX control '6bf52a52-394a-11d3-b153-00c04f79faa6' cannot be instantiated because the current thread is not in a single-threaded apartment. ну или например если я хочу задать компоненту AxMediaPlayer свойство settings.volume=int(data) такой же вылет.. при этом msgbox(data) или form2.textbox1.text=data, к примеру работает. но, если же в этом случает отслеживать событие onchanged и передавать текст дальше в свои функции-опять вылет... Каааааак, объясните мне, как мне победить эту запару с потоками?? может попробовать реализовать псевдомультипоточность через таймер, вместо бесконечного цикла в отдельном потоке? подскажите пожалуйста!
0
|
|
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
||||||||
| 14.03.2012, 19:26 [ТС] | ||||||||
0
|
||||||||
|
2 / 2 / 0
Регистрация: 28.11.2010
Сообщений: 14
|
|||||||||||
| 14.03.2012, 19:58 | |||||||||||
![]() Добавлено через 21 минуту
Я на верном пути? что должно быть в "t"?
0
|
|||||||||||
|
203 / 203 / 13
Регистрация: 14.10.2011
Сообщений: 227
|
|||||||||||||
| 14.03.2012, 20:11 [ТС] | |||||||||||||
И возможно(!):
0
|
|||||||||||||
| 14.03.2012, 20:11 | |
|
Помогаю со студенческими работами здесь
40
Технология создания приложений на основе многоуревневой архитектуры клиент - Web-сервер - сервер баз данных
Клиент-сервер, передать строку с клиента на сервер Клиент-Сервер. Распознавание клиента Получить ip адрес клиента (асинхронный клиент - сервер) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча
Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове.
Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
|
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
|
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера»
Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит.
Придуман Биллом Госпером в 1970-х, опубликован в. . .
|
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb">
<style>
<!]>
</ style>
<g id="bush">
</ g>
</ svg>
function fn(){
let rost;/ / высота древа
let xx=165,yy=210,w=256;
|
|
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов,
содержащихся в реализации модуля. По-умолчанию все члены модуля доступны:
module Foo
let x = 10
let boo () = printfn "boo"
. . .
|
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible". . .
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|