Отправка .JPG по сети через Winsock - как сделать?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
d1337r
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 08.09.2007 (Сб) 13:26

Отправка .JPG по сети через Winsock - как сделать?

Сообщение d1337r » 02.11.2007 (Пт) 11:05

Я пишу программу удаленного администрирования (потому что Radmin достал) и вот она должна посылать ЖПЕГу (лучший вариант) из screen.jpg на клиентский комп, который её сохранит и покажет на Image1.Picture. Подскажите как можно посылать файлы через WS без лишних глюков.

А точнее -- как прочесть .jpg в Visual Basic и разбить на такие куски, на которые спопобен String.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 02.11.2007 (Пт) 11:54

Что-то мне подсказывает, что ты и десятую долю функций RAdmin сделать не сможешь.
Lasciate ogni speranza, voi ch'entrate.

d1337r
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 08.09.2007 (Сб) 13:26

Сообщение d1337r » 02.11.2007 (Пт) 12:17

Мне надо только чтобы скриншоты передавались по WinSock'у.
Делать скрины не сложно, а вот передать так, чтобы они были хорошо прочитаны...
ВОТ В ЭТОМ вся проблема.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 02.11.2007 (Пт) 12:29

Как отправить JPG через винсок? Так же как и BMP, TIFF, GIF и любой другой файл. Примеры есть и на форуме и на сайте в исходниках.
Подпись проходит рефакторинг

kif
Постоялец
Постоялец
 
Сообщения: 736
Зарегистрирован: 10.12.2001 (Пн) 18:06
Откуда: Украина, Одесса

Сообщение kif » 02.11.2007 (Пт) 12:29

1. Jpg - в байтовый массив
2. Массив в строку
3. Строку передаешь
4. Строку принимаешь
5. Строку в массив
6. Массив в Jpg
:D
Братья и сестры, что вы делаете???
Ведь вы же братья и сестры.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 02.11.2007 (Пт) 12:38

kif
можно и без конвертации строка->байтовый массив и байтовый массив->строка например так:
Код: Выделить всё
Open "path_to_jpg" for binary as #1
Stroka=Input(LOF(1), 1)
Close

Точно так же и записать в файл:
Код: Выделить всё
Open "path_to_jpg" for binary as #1
Put #1, , Stroka
Close
Подпись проходит рефакторинг

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 02.11.2007 (Пт) 13:32

kif писал(а):1. Jpg - в байтовый массив
2. Массив в строку
3. Строку передаешь
4. Строку принимаешь
5. Строку в массив
6. Массив в Jpg

2-5 выкинуть. Сокет может и байтовые массивы передавать.
Lasciate ogni speranza, voi ch'entrate.

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 02.11.2007 (Пт) 15:06

Lumen писал(а):kif
Код: Выделить всё
Open "path_to_jpg" for binary as #1
Stroka=Input(LOF(1), 1)
Close


Считав бинарный файл таким методом, как-то раз словил ошибку и получатель отличался от источниика. Он толи по какой-то последовательности символов глючит, толи ещё что, но на такой файл я как-то раз нарвался. А вот Get в массив - а потом копи-мемори в строку работает идеально.
Программисты не глючат - глючат компиляторы...

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 02.11.2007 (Пт) 16:05

CodeName33
Может с винтом че-та не в порядке было? У меня всегда нормально работало.
Подпись проходит рефакторинг

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 02.11.2007 (Пт) 16:19

Lumen писал(а):CodeName33
Может с винтом че-та не в порядке было? У меня всегда нормально работало.


Да, нет, я переделав алгоритм под Get получил полное соответствие в данных. Проверял специально два алгоритма на другом компе с тем же файлом - с инпутом файлы различались. До этого случая, тоже года два таких проблем не знал, а тут вдруг...
Программисты не глючат - глючат компиляторы...

GPP
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 351
Зарегистрирован: 02.11.2005 (Ср) 8:02
Откуда: г.Невельск о.Сахалин

Сообщение GPP » 02.11.2007 (Пт) 17:09

А как передать данные больше 8 килобайт? Удалось предать картинку размером 8килобайт!
GPP(c) Gorlo Pavel Programming

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 02.11.2007 (Пт) 22:06

GPP писал(а):Удалось предать картинку размером 8килобайт!

Аяяй, предавать картинки нехорошо!!! :?
А если по делу, то че там передавать? заведи переменную для картинки и какой-нить буфер для приема данных. Как придет че-нить, добавляй к основным данным и всего делов.
Подпись проходит рефакторинг

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2054
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 06.11.2007 (Вт) 12:03

Вопрос в тему. Отцы, а где стоит посмотреть про алгоритмы определения какая часть рисунка обновилась ? Радмин то передаёт не всё время целиком картинку, а только изменения от предыдущего кадра вроде ? :)

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 06.11.2007 (Вт) 12:10

ALX_2002 писал(а):Вопрос в тему. Отцы, а где стоит посмотреть про алгоритмы определения какая часть рисунка обновилась ? Радмин то передаёт не всё время целиком картинку, а только изменения от предыдущего кадра вроде ? :)


Тут только попиксельно. Потому RAdmin, начиная с 3й версии, от такого алгоритма отказался, и перешёл на собственный видеодрайвер - так быстрее.
Программисты не глючат - глючат компиляторы...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 06.11.2007 (Вт) 12:37

С третьей? Мне казалось, что свой драйвер он с первой версии ставил.
Lasciate ogni speranza, voi ch'entrate.

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 06.11.2007 (Вт) 12:53

alibek писал(а):С третьей? Мне казалось, что свой драйвер он с первой версии ставил.


Да, действительно, в 2.2 уже ставиться драйвер. Насчёт 2.1 не знаю, но то, что он грузил процессор при активных изменениях на экране - это факт. 3й перестал.
Программисты не глючат - глючат компиляторы...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 84

    TopList