Сервер и клиент
Собственно вопрос, как то ранее писал сервер с клиентом на PureBasic, по команде сервера клиент на удаленном ПК делал скриншот и отсылал серверу. Проблема в том что под ХР это все работает отлично, а вот если сервер запустить на Win 8.1 то вылетает ошибка при попытке отсылания клиентом скриншота на сервер, а точнее когда сервер принимает файл и пытается его уже сохранить. Ошибка такого рода "Невозможен доступ к памяти (ошибка чтения по адресу ...................)"
Может вся проблема в правах Администратора? |
Ответ: Сервер и клиент
Да и еще вопрос, есть белый IP но когда клиент запускаешь на другом ПК то он не подключается к белому IP, порт открыт все сделано, почему так не понимаю
|
Ответ: Сервер и клиент
белый IP не означает что он не проходит через NAT провайдера. А провайдер может и не роутить любые порты.
|
Ответ: Сервер и клиент
Цитата:
|
Ответ: Сервер и клиент
С этим все нормально, ну на 80 порт у меня Web сервер стоит и с ним все нормально.
А в сервере с клиентом тоже прописываю 80 порт и все равно не конектится. |
Ответ: Сервер и клиент
Собери сервер с поддержкой OnError и узнаешь в какой строке проблема.
А еще лучше, запускай сервер из IDE с активным Purifier'ом. |
Ответ: Сервер и клиент
А по подробнее можно?
И да кстати забыл добавить, на счет того что Сервер и Клиент в локальном режиме работает нормально и выполняет все функции, а вот стоит только клиент закинуть на другой ПК а в настройках клиентах ввести белый IP то он нифига не подключается. |
Ответ: Сервер и клиент
http://purebasic.mybb.ru/viewtopic.php?id=278
Purifier включается в настройках компилятора на вкладке "Компиляция/Запуск". Отладчик так же должен быть включен. |
Ответ: Сервер и клиент
Да сейчас уже вопрос не в ошибке которая появляется при отправке на сервер скриншота, а в том что клиент не работает с другого ПК а точнее не подключается к белому IP
|
Ответ: Сервер и клиент
IP точно белый?
Запусти сервер и проверь открыт ли порт. http://2ip.ru/check-port/ |
Запускаю, проверяю и на сервер выходит что есть подключение а на сайте написано что порт открыт
Я так понимаю ни кто не знает в чем проблема может быть? Всем спасибо, все свободны. Проблема решена. Подключится удалось. По части ошибки что я писал в первом посте так и не решил, хотя даже не пытался, но за то подтолкнуло переписать клиент с сервером и заставить работать и отсылать на сайт через MySQL :) В общем все ништяк и все робит :) Тему можно ЗАКРЫВАТЬ |
Ответ: Сервер и клиент
Звучит так, что ты считаешь, что тебе кто-то в чём-то обязан?..
Т.к. выглядит что ты недоволен что написал, а тебе тут не помогли, думаю стоит задуматься о ожиданиях что ты ставишь прежде чем постить. По факту - за то время что постишь тут, уже решил бы проблему сам. Используй кнопку "Правка" у сообщений. |
Ответ: Сервер и клиент
Цитата:
По части постов? Да пардон извиняюсь. Проблему решил не спорю, и очень рад что решил, вот и поблагодарил всех кто пытался помочь :) По факту - за то время что я постил тут я сидел и решал проблему... |
Ответ: Сервер и клиент
Забираю слова обратно.
|
Ответ: Сервер и клиент
Вложений: 1
Кому не трудно скачайте и запустите у себя, нужно проверить подключается или нет.
|
Ответ: Сервер и клиент
Русский не отображается - не используй русский в приложениях, вообще.
Подвисает изначально, потом отвисает, потом совсем подвисает (Not Responding). |
Ответ: Сервер и клиент
Цитата:
|
Ответ: Сервер и клиент
Я запустил. Окошко открылось, снизу текст "Сервер отключен...". Более ничего не происходит.
|
Ответ: Сервер и клиент
Цитата:
Работает, подключается, все норм :) Спасибо :) При запуске может немного подвисать только потому, что если включен антивирусник. На счет того что пишет что сервер отключен, я забыл исправить и добавить в статус бар надпись что клиент успешно подключен. Исправил, перезалил, проверьте. Пост #15 |
Ответ: Сервер и клиент
Ага, всё нормально подключилось, никаких подвисаний нет, windows 8.1.
|
Ответ: Сервер и клиент
Ага вижу, спасибо :) Будем дальше курить. Главное подключение есть :)
|
Ответ: Сервер и клиент
Подскажите как правильно передать и получить данные структуры
|
Ответ: Сервер и клиент
Смотря какая структура.
В простейшем случае. Код:
SendNetworkData(ID, @Struct, SizeOf(MyStruct)) |
Ответ: Сервер и клиент
Цитата:
|
Ответ: Сервер и клиент
Вариантов много.
Можно прямо в структуру записать принятые данные (при условии что в ней все поля статические) Код:
ReceiveNetworkData(Connect, @Info.NetPacket_Data, SizeOf(NetPacket_Data)) Код:
*Data.NetPacket_Data = *BuffInfo\Buff |
Ответ: Сервер и клиент
Спасибо. Уже разобрался. Продвижение есть. В топике что ты мне скинул конечно все бы ничего, но уж не особо я люблю разбираться в такой куче кода особенно если он писан другим человеком (Вот прокоментировать бы его тогда да), а так даже заморачиваться не стал. В итоге поломал не много голову и все же мне удалось записать данные переданной структуры по сети. Но тем ни менее за ссылку спасибо. На досуге почитаю.
Да я в принципе так и сделал сразу данные записал в структуру. А на счет статических полей есть решение? |
Ответ: Сервер и клиент
Если в структуре не все статические поля, то в ней только ссылки на динамические данные (строки, массивы, списки и т. д.) и тогда нельзя взять и просто передать структуру.
Тот код реализует свой протокол, что необходимо если не хочется заморачиваться с контролем приема данных, ведь за один вызов ReceiveNetworkData() может быть принята не вся посылка и сразу несколько посылок. Тот код разделяет посылки и ожидает приема если посылка не до конца принята. |
Ответ: Сервер и клиент
Цитата:
|
Ответ: Сервер и клиент
Вложений: 1
|
Часовой пояс GMT +4, время: 06:03. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot