Обмен данными между Pocket PC и PalmOS без проблем

ВНИМАНИЕ: настоящая статья содержит как ответы, так и пояснения по вопросам передачи данных между устройствами на базе Pocket PC и Palm OS. Так же раскрыто множество вопросов касательно только Pocket PC, а так же Bluetooth, не раскрытых ранее. В любом случае, прочтение этой статьи рекомендуется не только людям, собирающимся налаживать передачу данных между Pocket PC и Palm OS, но и пользователям Pocket PC, которые интересуются, тем, как происходит передача данных с Pocket PC на Pocket PC.

Владельцы КПК, неважно Pocket PC или Palm (а иногда и обоих сразу) часто интересуются, как передавать файлы между этими устройствами. Поскольку никто так еще и не написал четкого пошагового руководства и подвести черту под подобными вопросами, я решил сделать это сам.

Для начала скажем, что передача файлов и записей-PIM (Personal Information Manager) между Palm OS и Pocket PC не такое уж и простое занятие, как может показаться с первого взгляда. Первое и самое главное, КПК с Palm OS хранят все файлы в так называемых базах данных, поскольку операционной системе не хватает настоящей файловой системы, когда дело доходит до встроенных RAM и ROM. Реальной же файловой системой (FAT 16/FAT 32) обладают только карты памяти.

Это значит, что в Palm OS нет файлов в привычном понимании этого слова. Когда, например, вы посылаете файл .txt (текстовый), он будет конвертирован в запись в заметках Memos. Когда же вы посылаете файл Excel (в том случае, если устройство способно его воспринимать, но об этом ниже), то он также будет конвертирован. И вы никогда не увидите ничего кроме фалов PRC и PDB (только такие, "родные" типы файлов способна воспринимать Palm OS) на Palm.

1. Отправка и получение файлов

Какие же файлы можно посылать на Palm? Только те, которые поддерживаются операционной системой. Например, если вы установили на свой КПК, или оно уже предустановлено в ROM приложение Documents to Go (между прочим действительно хорошее приложение, даже встроенные программы из Windows Mobile 5 не всегда предлагают такие широкие возможности) тогда вы сможете посылать файлы Word и Excel на свой КПК (но, сожалению, это не получится с файлами презентаций Power Point); и они будут связаны в системе с приложением Documents to Go. Или же, у вас на КПК есть приложение "Photos", и тогда вы можете отправлять на свой КПК файлы JPG и GIF (естественно, при этом нужно учитывать их размер, т.к. отправка на КПК снимка, сделанного 6-мегапиксельной камерой, может привести к отказу системы при попытке принять его). Такие файлы будут ассоциироваться с программой Photos.

1.1 А каковы ограничения на отправку файлов с КПК с операционной системой Palm OS?

  1. Вы можете посылать только (исполняемые, PRC) файлы, на уровне операционной системы, те которые видны в "App/Send";

  2. Файлы с данными должны отсылаться только из тех приложений, с которыми они ассоциированы (и только в том случае, если конкретное приложение поддерживает отправку файлов);

  3. Вышеперечисленное значит, что вы не можете просто передать файл, хранящийся у вас на карте памяти, но не ассоциированный ни с одним приложением (ситуация, обратная Windows Mobile, где можно кликнуть на любой файл, даже если система не определяет его как прикрепленный к какому-либо приложению, и отправить его).

Так было до тех пор, пока Softiсk не разработала программу Bluetooth Commander, которая открывает возможность отправки любых файлов или баз данных с КПК на Palm OS.

На самом деле есть еще два приложения, открывающих пользователю приблизительно такие же возможности. Это бесплатная программа FileZ и уже переставшая быть бесплатной McFile. Они очень схожи, и, если вы имеете опыт работы хотя бы с одной из этих программ, то без труда освоите и остальные. Именно поэтому мы их сейчас и не рассматриваем.

1.1.1 Bluetooth Commander в действии

Как уже говорилось выше, Bluetooth Commander позволяет отправлять файлы (в то же время у Softick есть еще один продукт с зеркальной функциональностью - Blue Files).

И какие же здесь проблемы?

Только Pocket PC с программным обеспечением Widcomm смогут принимать информацию, посылаемую Bluetooth Commander. На тех устройствах, где используется ПО Microsoft будет появляться сообщение "Attribute is not set for record (0x311F)". Это происходит из-за того, что ПО от Microsoft не поддерживает профиль "File Transfer", который используется при такой передаче файлов. В данном случае, на вооружении имеется только "OBEX Object Push"-профиль вместо требуемого "File Transfer".

Это и есть основная проблема, если в роли получателя файла выступает Pocket PC с ПО от Microsoft: в данном случае возможности отправки файлов ограничиваются App/Send из набора стандартных приложений (App/Send использует Obex Push, а не File Transfer) и так же отправкой файлов напрямую из приложений (обычно пункт File/Send File в самой программе).

Таблица совместимости при передаче данных через Bluetooth.

Тип ПО используемый в Pocket PCWidcommMicrosoft
Palm OS

Зарегистрированные в системе типы файлов

Тоже самое, что и в случае с Widcomm
Palm OS + Blue Files

(получение инициируется на стороне Windows Mobile)

Любые файлы (с зарегистрированными типами файлов конвертации производиться не будет)

Невозможность предпринимать любые действия - отсутствие FTP профиля в ПО Microsoft
Palm OS + Bluetooth Commander (отправка инициируется со стороны Palm OS)

Любые файлы (с зарегистрированными типами файлов конвертации производиться не будет)

Невозможно подключиться

1.1.1.1 Другие замечания по Bluetooth Commander

Bluetooth Commander не только удобное приложение для Palm OS с возможностью переименования, удаления, перемещения, копирования файлов с поддержкой баз данных на самом устройстве и файловой системы FAT, оно предоставляет такие же возможности и через Bluetooth.

Его использование может на первый взгляд показаться довольно сложным. На самом деле, стоит раз научиться отправлять файлы на карту памяти или удаленное Bluetooth-устройство, и понять какой пункт следует выбирать из выпадающего контекстного меню, как все станет предельно просто.

Наличие файлового менеджера на вашем Palm может сыграть важную роль и в других случаях. Например, во время написания этой статьи я проделывал множество тестов. Одним из них была передача 6-мегапиксельного снимка на мой Т3, которая привела к тому, что КПК повисал при каждом последующем запуске Photos. Поскольку встроенный менеджер файлов системы "не видел" этого файла, то пришлось прибегнуть к помощи Bluetooth Commander, чтобы удалить его. После того, как программа Photos все-таки стала запускаться пришлось в ней вручную удалить миниатюру фото, которая осталась в ней.

1.1.2 Blue Files - File Transfer-сервер для Palm

Если вы имеете представление о Bluetooth и применяемых профилях, то возможно вы захотите узнать, имеется ли у Palm профиль File Transfer изначально.

Именно профиль File Transfer позволяет подключаться к КПК с Palm OS с другого Bluetooth устройства, имеющего клиент Bluetooth File Transfer. Если рассматриваемое устройство поддерживает профиль File Transfer, то и любой клиент с профилем File Transfer может подключаться к нему, просматривать, отправлять и получать файлы. Вас могут заинтересовать различия между профилями File Transfer и OBEX Object Push, который, поддерживается Palm.

А отличия следующие:

Профиль BluetoothFile TransferOBEX Object Push
Клиент должен быть:

Совместимым с профилем File Transfer (на практике только Widcomm).

OBEX Object Push совместимым: поддерживается как ПО Microsoft, так и Widcomm, а также другие Palm-КПК
Файлы могут быть:

Загружены и скачаны.

Только загружены на устройство.
Директория по умолчанию:

Устанавливается пользователем.

Не устанавливается вручную. Получаемые файлы сохраняются в корне файловой системы Palm и в папке My Documents в случае с Windows Mobile.
Конвертация в "родной" формат при загрузке

Не производится. Если файл не может быть сохранен, он просто не будет сохранен в памяти КПК. Такое происходит даже с теми файлами, что ассоциированы с системными приложениями. Но при сохранении на карту памяти все в порядке.

Производится конвертация загружаемых файлов. Файлы .txt, .jpg, .gif, .doc, .xls, .png, .wav будут преобразованы в "родной" PDB-формат и сохраняются в основной памяти КПК.
Возможность передачи более сложных типов данных, например, контактов и событий календаря

Нет.

Да, в большинстве случаев работает на всех платформах, даже на телефонах начального уровня.

К несчастью, Palm OS не поддерживает профиль File Transfer, ни в роли клиента (именно поэтому и нужно использовать Bluetooth Commander), ни в роли сервера.

Поэтому самое время посмотреть на утилиту-файловый сервер Blue Files, который представляет собой полную противоположность уже рассмотренному Bluetooth Commander. Для Palm-систем он добавляет полноценную поддержку File Transfer. Это значит, что если вы установите и запустите Blue Files на своем КПК, то его можно будет обнаружить и воспользоваться сервисом File Transfer с другого устройства, например, КПК на базе Pocket PC.

Ну а так как без инсталляции Blue Files Palm поддерживает только OBEX Object Push, то другие КПК на базе Pocket PC не найдут у Palm вообще никаких Bluetooth-сервисов.

1.1.3 Как начать передачу файла через OBEX Object Push c Pocket PC (Без установки Blue Files на Palm)?

Так как отправка файлов предусмотрена операционной системой по умолчанию, то все зависит от того, какой Bluetooth-стек используется в вашем Windows-КПК: Microsoft или Widcomm. Если последний, то все также зависит и от того, какова версия ОС: Windows Mobile 5 или ее предшественница.

1.1.3.1 На вашем КПК установлено ПО Microsoft

В этом случае достаточно выбрать пункт "Beam File" в контекстном меню, вызываемом длительным нажатием на файл в File Explorer. Через несколько мгновений на экране появится список устройств, на которые можно отправить файл. Далее остается выбрать устройство-получатель. Как и в случае с Palm OS, файл можно отправить нескольким получателям.

Не забывайте, что прежде чем нажать "Beam" следует активировать функцию Bluetooth, иначе передача начнется через ИК-порт. Система считает, что раз вы не включили Bluetooth, значит предпочитаете использовать для отправки файлов ИК-порт.

Как альтернативу этому способу можно использовать встроенные возможности передачи данных программы Resco File Explorer, которая по общему мнению является лучшим файл-менеджером для Pocket PC. Для этого удерживайте стилус на нужном файле, и выберите из выпадающего контекстного меню пункт Send To/Bluetooth recipient и укажите устройство-получатель. После этого начнется передача данных.

1.1.3.2На вашем КПК установлено ПО Widcomm

Если ваш КПК оснащен Bluetooth-стеком Widcomm, а ОС - Windows Mobile 5, то вам необходимо пользоваться стандартным "проводником" File Explorer. В противоположность ПО Microsoft, вам не удастся для этих целей использовать функцию "Beam File" (как на КПК с Windows Mobile 5, так и с более ранними версиями операционной системы) т.к. в данном случае этот пункт инициирует передачу только через ИК-порт. Все КПК на базе Windows Mobile 5, оснащенные ПО Widcomm имеют в своем арсенале функцию "Send via Bluetooth". Чем и стоит воспользоваться.

С другой стороны, если вы являетесь владельцем КПК с ОС ниже Windows Mobile 5, то у вас возникнут проблемы. Встроенный проводник на этих устройствах не поддерживает передачу файлов через Bluetooth. А Resco File Explorer не сможет послать файл получателю с ПО, отличным от Widcomm. В общем все прямо противоположно ситуации с ПО от Microsoft. В следующей таблице рассмотрены основные случаи с тремя разновидностями КПК с Windows Mobile, используемыми для отправки файлов на Palm. Обратите внимание, что в данном случае речь идет о профиле OBEX Object Push, а не File Transfer, для которого Palm требует Blue Files.

Версия WM и тип используемого ПО для BluetoothWidcomm, ОС - предшествующая WM 5Widcomm и WM 5Microsoft, WM 5
Возможность отправки зарегистрированных типов файлов в RAM с конвертацией.

FE (File Explorer)/Resco

н/д/-

+ (Send via Bluetooth)/-

+ (Beam File)/+

Возможность отправки PRC/PDB в RAM.

FE/Resco

Нет/-

+ (Send via Bluetooth)/-

+/+

Как вы уже, наверное заметили, в таблице рассмотрены варианты и с File Explorer и с Resco Explorer. Как видно, Resco Explorer для отправки любых файлов на устройства с ПО отличным от Widcomm можно использовать только при наличии Bluetooth-стека Microsoft. Кстати, аналогичная ситуация случается, когда получателем выступает не Palm, а Pocket PC (т.е. Resco на КПК с Widcomm не сможет ничего отправить на КПК со стеком Microsoft). Следующая таблица иллюстрирует данную ситуацию:

Отправка производится с помощью

стек Microsoft

стек Widcomm
Прием со стеком Microsoft

+

-

Прием со стеком Widcomm

+

+

Как видно уже из этой таблицы, нельзя послать файл с КПК со стеком Widcomm на устройство со стеком Microsoft (равно как и на Palm), если вы используете Resco Explorer. Вы можете пользоваться лишь стандартной функцией Send via Bluetooth в проводнике КПК с WM 5 или же комбинацией из сервиса File Transfer и Blue Files на Palm, если версия операционной системы Windows-КПК отличается от WM 5.

1.1.4 Как посылать файлы с Pocket PC через профиль File Transfer?

Здесь речь идет о передаче/приеме файлов из памяти КПК и с карт памяти без конвертации и с применением профиля File Transfer, который не стоит путать с профилем OBEX Object Push, рассмотренным в пункте 1.1.3.

Если у вас ПО Widcomm, то проблем не возникнет. Все его версии (даже самые ранние, как 1.3.х) поддерживают File Transfer.

Если же на вашем устройстве ПО от Microsoft, то вы НЕ сможете использовать File Transfer в принципе. Даже в том случае, если на Palm установлена программа Blue Files. В обратную сторону, если, например, вы запустите на Palm Bluetooth Commander и попытаетесь подключиться к Pocket PC, это также не будет работать, как говорилось в пункте 1.1.1.

Вот еще одна таблица совместимости:

Widcomm, ОС до WM 5
Widcomm, WM 5
Microsoft, WM5
+ (встроенный клиент File Transfer в ПО)

+ (встроенный клиент File Transfer в ПО)

- (нет FTP клиента)

1.1.4.1 Использование File Transfer на Pocket PC для доступа к Palm

Во-первых, установите Blue Files на Palm и запустите. Когда программа запущена, ПО Widcomm на Pocket PC, выступая в роли клиента, "увидит" File Transfer на Palm, в отличие от случая с применением стандартных средств (1.1.2).

Теперь добавьте сервис "Blue Files FTP", предоставляемый Palm на вашем Pocket PC (New/Explore a Bluetooth device). Достаточно проделать эту процедуру один раз, и в дальнейшем двойное нажатие на вновь созданную иконку будет активировать подключение.

После того, как соединение с Palm-устройством установлено, вы увидите список накопителей, доступных для просмотра. Это, например, жесткий диск LifeDrive, а также RAM, ROM и карты памяти у обычных Palm. Все файлы и каталоги, хранимые в данных областях памяти можно просматривать совершенно свободно.

Если вы хотите "скачать" какой-либо из файлов, просто найдите нужный и выберите пункт "Get File" из меню. Он будет загружен в ту директорию вашего КПК, которая установлена как директория для загрузки файлов по умолчанию (изменить ее можно в разделе Tools/Set Local Folder).

Если же вы хотите послать файл в ту папку, которую сейчас просматриваете, нужно выбрать File/Send из меню и вы увидите список фалов в папке My Documents, при этом, если в Windows-КПК установлена карта памяти, и на ней также есть папка My Documents, то и файлы оттуда также будут доступны. Ну а если вам нужны расширенные возможности, то можно установить что-то вроде Mad Programmer's File Dialog Changer для продвинутых и опытных пользователей Pocket PC.

Я протестировал последнюю версию Blue Files, а также текущие версии стека Widcomm (1.3, 1.4, 1.5, 1.7), включая модернизированную версию Dell Axim. Все работало превосходно как при загрузке, так и при закачке файлов на Palm. Отмечу, что если в качестве Pocket PC использовался HP hx4700 с Windows Mobile 5, то постоянно выскакивала ошибка "The parameter is incorrect" при доступе к ROM на Palm. Но на это можно не обращать внимания т.к. файлы все равно успешно передавались (в данном случае - загружались с Palm). С другими КПК с ПО Widcomm таких проблем не возникало.

2. Отправка и получение PIM-записей

Существует несколько типов файлов, которые "понимает" Palm. Например, когда вы посылаете на него .txt файл, то он сохранится как отдельная запись во встроенной программе Memos. При обратной передаче файла из Memos, он будет принят вторым устройством (не Palm) и сохранен на нем в формате .txt. Точно так же можно в любых направлениях передавать события календаря, контакты и другую информацию из органайзера.

Приведенная ниже таблица содержит полный список файлов, поддерживаемых встроенными приложениями Palm OS (на примере Palm Tungsten T3):

Отправка производится с Palm/Pocket PC
Инициация с Palm (когда Pocket PC получает данные)
Инициация с Pocket PC (когда Palm получает данные)
КалендарьСобытие календаря/Send EventBeam Appointment (MS)/Send Via Bluetooth (Widcomm). И то и другое в контекстном меню.
КонтактыКонтакт/Send ContactBeam Contact (MS)/Send via Bluetooth (Widcomm). И то и другое в контекстном меню.

Documents To Go / Office Mobile Файлы офисных приложений только в "родных" форматах MS Office

File/Send FileОправляются любые файлы .doc и .xls с ПО Microsoft и Widcomm (не для КПК с ОС предшествующей WM 5 и стеком Widcomm)

Memos / только текстовые записи Notes (текстовые заметки)

Запись/SendОтправляются любы файлы .txt как с ПО Microsoft, так и Widcomm (не для КПК с ОС предшествующей WM 5 и стеком Widcomm). Файлы более 32 КБ разбиваются на фрагменты, не превышающие 32 КБ и принимаются Palm как несколько заметок.
Note Pad / графические заметки Notes(графические заметки)Запись/SendЗаметки будут отправлены как изображения .png с разрешением 304 х 704Невозможна передача на Palm .pwi файлов, созданных на Pocket PC напрямую. Только после их конвертации в текст или графические файлы.
Photos / изображения или снимки камеры Фото/SendОтправляются любые разумного размера файлы .jpg и .gif как с ПО Microsoft, так и Widcomm (не для КПК с ОС предшествующей WM 5 и стеком Widcomm).

Voice Memo / Notes (WAV-файлы)(записи диктофона)

Запись/Send V Memo (PPC)Кодек не поддерживается Pocket PC- Palm не поддерживает кодек PMC/GSM, используемый на Pocket PC, поэтому переданные на Palm с Pocket PC голосовые заметки не будут прикреплены к приложению Voice Memo.

Стоит отметить, что на других Palm-устройствах этот список может быть несколько другим. Например, на КПК, на котором не установлено приложение Documents to Go невозможно будет передать файлы .doc и .xls, а .wav файлы не будут восприниматься теми КПК, у которых нет встроенного микрофона и т.д.



Эта статья с сайта PalmQ Online
http://www.palmq.ru

URL этой статьи:
http://www.palmq.ru/sections.php?op=viewarticle&artid=124