2010-01-23 5 views
1

У меня есть сокет-сервер на базе, и я хочу, чтобы отправить файл с этого сервера на все подключенные я попытался использовать на стороне сервераОтправить файл в C# клиент-сервер приложения

tcpClient.Client.SendFile(filename) 

Но как Я различаю это сообщение на клиентской части? Из-за того, что обычный протокол связи, который я использую, основан на XML, и, отправив txt-файл, например, он не будет разбираться. Есть ли способ захватить на стороне клиента файлы, отправляемые с помощью «SendFile»?

ответ

1

Если вы программируете на уровне сокета, вам необходимо создать свои собственные протоколы.

Например, вы можете решить, что клиент отправит команды на сервер, например «FILE file.typ \ n». Когда сервер увидит эту команду, он ожидает увидеть количество байтов в следующем файле: «nnnnnn \ n». После этого ожидалось, что следующие «nnnnnn» байты будут содержимым файла.

Смежные вопросы