Здравствуйте, kiborg, Вы писали:
K>Не ну всякое бывает. Только это не правильно. Тут ничего случайного не должно быть.
Я это понимаю. Специальо проверял на нескольких мобилках.
K>Я говорю про функцию recv( Sock, BUF_R, 26, 0 ); K>Откуда здесь 26???
Сделал считывание первых 3 байт, но как можно было предположить первый байт далеко не код операции 17 а потом остальные 10 04. Подскажите, что я неправильно делаю, пакет вроде правильный.
T>> Обмен между ним и ещё одним мобильником проиходит — обменивался картинками. K>При обмене между мобильниками используется OBEX Push! А не OBEX folder-listing. OBEX Push сервер принимает объект и ложит в папку по-умолчанию. Он не выдает список файлов по запросу. Другой вопрос что если поддерживается сервис OBEX Push то и как правило OBEX folder-listing. Но это разные сервисы понимаешь?
Не подскажите как можно просмотреть содежимое телефона, тоесть картинки и пр. Если несложно не поделитесь примером на С.
K>>Я говорю про функцию recv( Sock, BUF_R, 26, 0 ); K>>Откуда здесь 26??? T>Сделал считывание первых 3 байт, но как можно было предположить первый байт далеко не код операции 17 а потом остальные 10 04. Подскажите, что я неправильно делаю, пакет вроде правильный.
Как я уже писал запускай рабочие программы, и смотри что они шлют.
Если программа какая нибудь работает, значит ты что-то не так делаешь.
T>>> Обмен между ним и ещё одним мобильником проиходит — обменивался картинками. K>>При обмене между мобильниками используется OBEX Push! А не OBEX folder-listing. OBEX Push сервер принимает объект и ложит в папку по-умолчанию. Он не выдает список файлов по запросу. Другой вопрос что если поддерживается сервис OBEX Push то и как правило OBEX folder-listing. Но это разные сервисы понимаешь? T>Не подскажите как можно просмотреть содежимое телефона, тоесть картинки и пр.
В спецификации всё написано.
посылаешь соответствующую команду чтения каталога, устройство тебе возвращает список папок\файлов.
Хочешь перейдти в другой каталог, посылаешь соответствующую комманду перехода с именем каталога и опять читаешь содержимое.
И так пока не надоест.
T>Если несложно не поделитесь примером на С.
Не сложно, не поделюсь. Коммерческая тайна.
Да и зачем тебе, ты сначала открой OBEX сессию.
Здравствуйте, kiborg, Вы писали:
T>>Если несложно не поделитесь примером на С. K>Да и зачем тебе, ты сначала открой OBEX сессию.
Я хочу попытаться при отклике
irADRR.irdaAddressFamily := AF_IRDA;
irADRR.irdaServiceName := 'OBEX';
на следующую структуру. отклик вроде как по доке.
Это не пример того чего товарищь хочет. Здесь просто пихается файл в устройство используя сервис OBEX Push (чего тут не сказано кстати).
K>>Да и зачем тебе, ты сначала открой OBEX сессию.
Здравствуйте, Tsnok, Вы писали:
T>Здравствуйте, kiborg, Вы писали:
T>>>Если несложно не поделитесь примером на С. K>>Да и зачем тебе, ты сначала открой OBEX сессию. T>Я хочу попытаться при отклике T> irADRR.irdaAddressFamily := AF_IRDA; T> irADRR.irdaServiceName := 'OBEX'; T>на следующую структуру. отклик вроде как по доке.
Не ну если ты такой настырный...
Готовый код выкладывать не буду, а то тебе не интересно будет.
Но вот описание
//---------------------------------------------------------------------------
// Прочитать текущую директорию на устройстве
//
// 0x83 - Команда 83h для Чтение объекта.
// 0xXX \ - Два байта с указанием длины этого пакета.
// 0xXX /
// 0x42 - параметр OBEX_HDR_TYPE (42h) тип запрашиваемого объекта
// 0xXX \ - Два байта с указанием длины
// 0xXX /
// 0xXX..XX - "x-obex/folder-listing" запрос списка файлов
// Пдробности см. в спецификации
Ответ делжен быть SUCCES или если пакет разбит на части то CONTINUE и его нужно дочитать.
// Ответ:
// code | длина |идент-ор длины | длина объекта |HI |длина |
// 0x90 - CONTINUE | XXXX | 0xC3 |0xXXXXXXXX |0x48-Body|0xXXXX | тело
// 0xA0 - SUCCES | 0x49 - End-of-Body |0xXXXX | тело
Здравствуйте, kiborg, Вы писали:
K>Здравствуйте, alsemm, Вы писали:
A>>Здравствуйте, kiborg, Вы писали:
A>>...
T>>>>Если несложно не поделитесь примером на С. A>>http://64.233.183.104/search?q=cache:RPbQFs0ZwvsJ:www.pocketpcdn.com/articles/obex.html+obex+cpp&hl=ru K>>>Не сложно, не поделюсь. Коммерческая тайна. A>>нашел чего прятать
K>Это не пример того чего товарищь хочет. Здесь просто пихается файл в устройство используя сервис OBEX Push (чего тут не сказано кстати).
Товаришч хочет чтоб работало, это рабочий пример. Первую часть про то как принять файл с девайса можно пропустить — там описано как запустить OBEX сервер, т.е. как принять файло, если передачу инициирует не PC, а телефон. А вторая часть про то как с PC закинуть файл на телефон, т.е. описано как написать OBEX клиента. Сможет закинуть, сможет и прочитать.
Я правда "закинул" по первости так что все картинки с нокии потерлись но потом вроде работало.
K>>>Да и зачем тебе, ты сначала открой OBEX сессию.
K>>Это не пример того чего товарищь хочет. Здесь просто пихается файл в устройство используя сервис OBEX Push (чего тут не сказано кстати). A>Товаришч хочет чтоб работало, это рабочий пример. Первую часть про то как принять файл с девайса можно пропустить — там описано как запустить OBEX сервер, т.е. как принять файло, если передачу инициирует не PC, а телефон. А вторая часть про то как с PC закинуть файл на телефон, т.е. описано как написать OBEX клиента. Сможет закинуть, сможет и прочитать. A>Я правда "закинул" по первости так что все картинки с нокии потерлись но потом вроде работало.
Товаришч хочет (и это разумно) читать файлы и папки удаленного устройства. Переходить в любую папку.
И писать/читать из них.
А передача файла — это частный случай всего того чего он хочет. Это само-собой разумеется.
Здравствуйте, kiborg, Вы писали:
K>>>Это не пример того чего товарищь хочет. Здесь просто пихается файл в устройство используя сервис OBEX Push (чего тут не сказано кстати). A>>Товаришч хочет чтоб работало, это рабочий пример. Первую часть про то как принять файл с девайса можно пропустить — там описано как запустить OBEX сервер, т.е. как принять файло, если передачу инициирует не PC, а телефон. А вторая часть про то как с PC закинуть файл на телефон, т.е. описано как написать OBEX клиента. Сможет закинуть, сможет и прочитать. A>>Я правда "закинул" по первости так что все картинки с нокии потерлись но потом вроде работало.
K>Товаришч хочет (и это разумно) читать файлы и папки удаленного устройства. Переходить в любую папку. K>И писать/читать из них. K>А передача файла — это частный случай всего того чего он хочет. Это само-собой разумеется.
IMHO c ног на голову ты все поставил.
Tsnok попросил пример кода на С, что и получил. Дальше пусть сам разбирается, там разжевано все.
K>>А передача файла — это частный случай всего того чего он хочет. Это само-собой разумеется. A>IMHO c ног на голову ты все поставил.
A>Tsnok попросил пример кода на С, что и получил. Дальше пусть сам разбирается, там разжевано все.
А это не важно, что это не то что он просил?
Здравствуйте, kiborg, Вы писали:
K>>>А передача файла — это частный случай всего того чего он хочет. Это само-собой разумеется. A>>IMHO c ног на голову ты все поставил.
A>>Tsnok попросил пример кода на С, что и получил. Дальше пусть сам разбирается, там разжевано все. K>А это не важно, что это не то что он просил?
Человеку нужен код, который можно собрать и запустить и чтоб он чего-то сделал близкое к тому что он хочет.
Дальше отладчиком посмотрит как оно работает и решит по аналогии свою задачу.
K>Вообще-то в Сети есть и более интересные примеры, стоит только пять минут поискать: K>http://prdownloads.sourceforge.net/openobex/openobex-1.0.1.tar.gz?download K>или K>http://chaos.allsiemens.com/siefs/
Тут надо перелопатить гору кода, прежде чем доберешься до сути, а там два файла по 300 строк.
Не надо усложнять