Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Named Pipe через сеть  (Прочитано 8509 раз)
0 Пользователей и 1 Гость смотрят эту тему.
GerontDev1
Гость
« : 25-04-2008 02:59 » 

   У меня написано серверное – клиентское приложение, общающееся через Named Pipe. Когда тестируешь на одном компьютере, то все нормально, а вот если пытаешься работать через сеть, то соединение происходит, но вот передачи данных нет!  Здесь была моя ладья... На сервере все стопориться на ReadFile, хотя на клиенте через WriteFile данные записаны в канал, что может быть такое?   Не понял
   На обеих машинах работа идет под администраторами. Операционные системы Windows XP или Windows Serve 2003.

Помоги те это диплом…  Жаль
Записан
GerontDev1
Гость
« Ответ #1 : 25-04-2008 11:19 » 

Везде на тыкал GetLastError, так операция WriteFile (на клиенте) не выполняется  и  GetLastError = ERROR_INVALID_USER_BUFFER = 1784 = The supplied user buffer is not valid for the requested operation.  Быть такого не может
(обработки асинхронных запросов ввода – вывода не использую !!)
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #2 : 25-04-2008 11:28 » 

а на клиент то вообще что нибудь приходит ?

в фаере должно быть видно или в виндовских трёх пальцах->сеть
Записан

GerontDev1
Гость
« Ответ #3 : 25-04-2008 11:41 » 

а на клиент то вообще что нибудь приходит ?
На клиенте только происходит успешно соеденение CreateFile! На сервере ConnectNamedPipe = true - тоже

в фаере должно быть видно или в виндовских трёх пальцах->сеть
Сейчас все это тестю на двух виртуальных машинах, у них я все отключил родной брэнмауэр…
У меня только NetStat как-то пытался использовать…
Записан
GerontDev1
Гость
« Ответ #4 : 26-04-2008 14:22 » 

Проблема была решена, почему-то Named Pipe не хочет передавать блок длиной 131072 (0x20000) байт, передавать смог только 20480 (0x5000) байт.  Улыбаюсь Пришлось через цикл передавать кусками ... Скромно так...
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #5 : 27-04-2008 03:04 » 

GerontDev1, а ты ещё сжатие попробуй попользовать - быстрее передавать будет )
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines