нужно написать небольшую программу. например чат, сервер и несколько пользователей. Видел много исходников, но не мог найти мне нужного. Вообщем нужен чат, чтоб не только юзер-сервер, а юзер1-юзер2, и общий чат.
хотельсь ещё бы общатся не только по локальной сети, но и по интернету.
Другие языки программирования и технологии
как написать сетевое приложение на C#
Сразу скажу - ваша задача чрезмерно велика если вы никогда подобного не делали.
Технически локальная сеть от интернета ничем не отличается. Всегда должен быть сервер и его клиенты. На сервер можно выходить и через NAT, и пусть он даже в Интернете на отдаленном хостинге - это сути не меняет.
Транспортный протокол пусть даже и будет везде ТСР, для Интернет-сервера дешевле будет аренда HTTP. Следовательно лучше либо всю технологию организовать через ASP . NET, либо сделать возможность выбора транспорта до сервера. В локальных сетях TCP, в интернете HTTP.
Cуществует только 2 протокола передачи данных - TCP и UDP.
Остальное (HTTP, FTP, SMTP, POP3, ..) лишь надстройки над TCP. Поэтому реализуя свою систему нужно за базу брать TCP, а не протокол уже переточенный под другие нужды.
Но учитывая распространенность HTTP, вы можете пользоваться и им. Заголовок игнорировать, а в тело сообщения в бинарном виде шуровать запакованные данные. Единственная проблема буде тов том что HTTP не поддерживает постоянно открытое состояние, и придется каждый раз подключаться заново передавая свой идентификатор сессии. Для ТСР это не нужно.
Можете начать мыслить так.
1) создать приложение ASP . NET, создать там HttpHandler а страницу назвать Service.ashx
2) создать приложение на C# и с него слать HTTP запросы к этой странице.
3) разработать набор общих типов данных, их превращение в byte [ ] и назад (сериализация / десериализация) .
Самое главное - предусмотреть собственное обучение, допускать возможность провала, делить задачу на части. Не получается сделать обмен - учиться его делать. Не получается создать красивые типы данных - ну пробовать разные варианты.
Технически локальная сеть от интернета ничем не отличается. Всегда должен быть сервер и его клиенты. На сервер можно выходить и через NAT, и пусть он даже в Интернете на отдаленном хостинге - это сути не меняет.
Транспортный протокол пусть даже и будет везде ТСР, для Интернет-сервера дешевле будет аренда HTTP. Следовательно лучше либо всю технологию организовать через ASP . NET, либо сделать возможность выбора транспорта до сервера. В локальных сетях TCP, в интернете HTTP.
Cуществует только 2 протокола передачи данных - TCP и UDP.
Остальное (HTTP, FTP, SMTP, POP3, ..) лишь надстройки над TCP. Поэтому реализуя свою систему нужно за базу брать TCP, а не протокол уже переточенный под другие нужды.
Но учитывая распространенность HTTP, вы можете пользоваться и им. Заголовок игнорировать, а в тело сообщения в бинарном виде шуровать запакованные данные. Единственная проблема буде тов том что HTTP не поддерживает постоянно открытое состояние, и придется каждый раз подключаться заново передавая свой идентификатор сессии. Для ТСР это не нужно.
Можете начать мыслить так.
1) создать приложение ASP . NET, создать там HttpHandler а страницу назвать Service.ashx
2) создать приложение на C# и с него слать HTTP запросы к этой странице.
3) разработать набор общих типов данных, их превращение в byte [ ] и назад (сериализация / десериализация) .
Самое главное - предусмотреть собственное обучение, допускать возможность провала, делить задачу на части. Не получается сделать обмен - учиться его делать. Не получается создать красивые типы данных - ну пробовать разные варианты.
В чем у вас вопрос? Как написать приложение для локалки или как заставить ее работать через енторнеты? Это немного разные вещи.
http: //pyha. ru/forum/topic/2945.0 вот, например
Похожие вопросы
- посоветуйте пожалуйста книги по разработке виндовс приложений на C# и
- Что нужно знать для создания полноценного приложения на c++ ?
- Я зная C++ (уровень - днище) написал полноценную программу на C# за 7 дней. А программисты C# могут так же на C++?
- как написать такую программу для c++?
- Как можно написать программу на языке C, которая будет выводить числа от 1 до 1000 без if, switch, do, while, for, goto?
- На чём лучше писать приложения, на C++ или Delphi(на языке, а не на среде разработки)
- На чем лучше написать кроссплатформенное приложение?
- Помогите написать простенькую программу в C#
- Напишите пожалуйста код на C#
- Возможно ли из программы, написанной в VISUAL STUDIO c++ извлечь exeшник так, чтобы он запускался абсолютно везде?