+1.14
0 читателей, 22 топика

Получаем программно серийный номер на ТСД Cipher 9300

Публикация в дополнение вот к этой: Программируем лазерный считыватель на терминалах сбора данных Cipher (9300).

У терминалов сбора данных Cipher с Windows CE — есть одна особенность, в отличие от всех других ТСД (во всяком случае Motorola(Symbol) и Datalogic) стандартными способами получить серийный номер не получится. Получить то он получится — но будет на всех устройствах одинаковый, что лично меня не устраивает.

Однако этот глюк можно обойти и получить серийный номер при помощи API с библиотекой SystemApi_Ce_Net.DLL которая поставляется на диске с терминалом.

Ниже маленький примерчик кода — как это сделать:
using Cipherlab.SystemAPI;


int err = 0;

DataType.DataStruct.SYSINFO sysinfo = new DataType.DataStruct.SYSINFO();
            
err = SystemAPI.Function.GetSysInfo(ref sysinfo);

string serial = Encoding.UTF8.GetString(sysinfo.SerialNum,0,sysinfo.SerialNum.Length);

Полагаю комментарии излишни, и так всё достаточно просто и понятно.

Программируем лазерный считыватель на терминалах сбора данных Datalogic

Datalogic - программирование считывателяВ этой публикации, в дополнение к уже имеющимся публикациям о программировании терминалов сбора данных Motorola(Symbol) и Cipher, будет приведён пример программирования лазерного считывателя на ТСД Datalogic.

Всё, что будет описано ниже, тестировалось на терминале сбора данных Datalogic Memor (на маленькой фотографии слева), однако будет работать и на терминалах Datalogic с Windows CE серий: Skorpio/Skorpio Gun, J-Series и Kyman/Kyman Gun.

SDK необходимый для разработки можно взять на диске с терминалом сбора данных, однако проще скачать с сайта DataLogic.
Читать дальше →

Убираем панель задач на .NET CF 2.0 (делаем Full Screen)

Недавно столкнулся с проблемой, что FormWindowState.Maximized не везде работает. Например у меня на одном из устройств с Windows CE 6.0 — отказалось работать, и ни какие танцы с бубнами не помогали. Долго копался в интернете, в русскоязычном ничего не нащёл, набрёл на руководство на одном англоязычном сайте.

Сделал у себя, заработало!

Итак, проблема решается тремя функциями из coredll.dll:
Читать дальше →

Программируем лазерный считыватель на терминалах сбора данных Cipher (9300)

Программируем лазерный считыватель на CipherПришло время написать вторую публикацию по программированию считывающих устройств терминалов сбора данных. В первой публикации я приводил пример программирования лазерного считывателя на терминалах Motorola(Symbol), в этой публикации я приведу пример программирования лазерного считывателя на терминалах Cipher 9300.
Здесь я приведу простой пример создания программы на Windows CE, которая будет работать со считывателем на терминалах Cipher 93XX. В целом, исходный код данной программы будет основан на примерах, которые приведены в руководстве по программированию, но с небольшим своим усовершенствованием. Вообще удивительно, почему те кто составлял руководство и SDK для разработчиков к этому устройству, не озаботились выложить хотя бы парочку рабочих примеров.

Итак, по порядку. Начнём с того что нам потребуется для разработки.
Читать дальше →

Программируем лазерный считыватель на терминалах сбора данных Motorola (Symbol)

Программируем лазерный считыватель на SymbolДавно хотел написать такое руководство к действию, но как-то всё руки не доходили, и вот наконец написал, всего делов то было…
Любители впихнуть везде и всюду 1С-ку (даже на терминал) с использованием DataWedge (это такая утилита для отправки того что считал сканер в буфер клавиатуры только специализированная для ТСД Symbol) могут дальше не читать, а заниматься и дальше тем что больше нравится. Обращать в свою веру никого не буду :).
Итак, что же я здесь продемонстрирую?.. Я приведу маленький пример того, как задействовать считывающее устройство на терминале сбора данных (Symbol Motorola) из вашего приложения, расскажу что для этого необходимо и приведу пример кода.
Читать дальше →

Определение платформы в NET CF на мобильном устройстве

Понадобилось мне определять автоматически какая версия Win CE установлена на устройстве, я конечно был удивлен в конце результатом, но об этом позже. Сначала опишу метод получения информации о платформе… Получать информацию будем при помощи API функции SystemParametersInfo, ничего особенного все как обычно, сразу перехожу к примеру.
Читать дальше →

Рисование Красивых линий в Windows Mobile на C#

Здесь я приведу пример кода для рисования при помощи GDI+ для Windows Mobile. Хороший человек Алекс Фейнман представил замечательную библиотеку OpenNETCF.GDIPlus для рисования очень красивых линий с использованием разнообразных кистей и заливок. Библиотека доступна с исходным кодом и позволяет делать удивительные вещи, самыми полезными (на мой взгляд) из которых являются возможность рисования прозрачных объектов (Transparent) и сглаживания краёв и объектов, что делает линии значительно более привлекательными.

Итак пример кода:
Читать дальше →

Рисуем изображение с прозрачным фоном и заставляем его перемещаться в NET CF.

Довольно долго я всевозможными способами пробовал вывести изображения с прозрачным фоном (например картинку формата png) в .NET CF на Windows Mobile устройствах. Но всё получалось либо медленно и некрасиво, либо очень сложно. А нужен был метод позволяющий делать это просто быстро и качественно. И вот недавно наткнулся на чудесный набор библиотек OpenNETCF Smart Device Framework (думаю о нём я ещё не раз напишу — в нём ну очень много полезных и нужных вещей). В этом наборе имеется библиотека OpenNNETCF.Drawing.dll — предназначенная для работы с изображениями с использованием GDI+. Вот она то мне и помогла сделать то что так давно хотелось.

Читать дальше →

Включение виброзвонка в Windows Mobile на C#

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

Здесь я приведу три метода реализации виброзвонка на устройствах Windows Mobile в среде .NET CF. Хотя, по правде говоря, все они реализованы через использование API поэтому могут быть использованы не только в .NET.

Читать дальше →

Программная перезагрузка Мобильного устройства в NET CF.

Существует 2 вида перезагрузки для карманных компьютеров Жёсткая (Hard Reset — аппаратная перезагрузка) и Мягкая (Soft Reset — программная перезагрузка).
При Жёсткой перезагрузке устройство возвращается к заводским настройкам, делается она специфическими методами (иногда это нажатие сочетания определённых клавиш, иногда специально спрятанная кнопка). В любом случае прибегать к такому методу перезагрузке следует крайне осторожно.
При Мягкой перезагрузке все настройки и программное обеспечение на устройстве сохраняются, происходит обычная перезагрузка устройства, как на обычном компьютере. Этот вид перезагрузки используется довольно часто, когда необходимо применить новые специфические параметры либо при сбое какого либо из приложений. Здесь я приведу примеры мягкой перезагрузки устройства.

Читать дальше →