На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> КПК как тачпад , без сервиса на ПК
    Решил написать софтинку, которая при запуске добавит на КПК Bluetooth службу "Драйверы для клавиатуры, мыши и т. д. (Human interface device)".
    Дальше по идее комп подключается к этой службе ставит generic-драйвер мыша и КПК работате как тачпад.

    Сначала думалось, что идея не нова и таких програм для Windows Mobile должно быть немало.
    Но после долгого гугления найти не удалось не одной, даже платной. Все существующие работают только через клиент установленный на ПК.
    Меня такой вариант не устраивает, тем более что даже телефоны умеют притворятся мышом(почти все sony erisson). 8-)
    Решил попробовать написать свою и если получится выложыть в свободное плавание, например на SourceForge.

    Но оказалось все не так просто и на одном из начальных этапов я столкнулся с проблемой, для решения которой мне нужен совет.

    Увы в Compact Framework 3.5 отсутствуют адекватные средства для работы с Bluetooth.
    Нашел сайт 32feet.NET (2.2 Release) и решил использовать их библиотеку.
    Нашел пример и закодил его таким образом:

    ExpandedWrap disabled
              private BluetoothListener btlistener;
              private Stream btStream;
              private byte[] receiveBuff = new byte[1024];
       
              private void Form1_Load(object sender, EventArgs e)
              {
                  MessageBox.Show("started");
                  btlistener = new BluetoothListener(BluetoothService.HumanInterfaceDevice);
                  btlistener.Start();
                  BluetoothClient client = btlistener.AcceptBluetoothClient();
                  MessageBox.Show("AcceptBluetoothClient ok");
                  btStream = client.GetStream();
                  btStream.Write(new byte[] {0x4d}, 0, 1);
                  MessageBox.Show("Write ok");
              }


    MessageBox'ы добавил позже чтобы определить куда доходит выполнение(пока не разобрался как отлаживать на девайсе).
    Запускаю прогу, комп начинает видеть службу, при подключении к ней начинает подбирать драйвер но не может подобрать правильный.
    На КПК видим только сообщение "started" дальше строчки
    ExpandedWrap disabled
                  BluetoothClient client = btlistener.AcceptBluetoothClient();

    дело не заходит. :wall: Хотя по идее после подключения компа должно зайти, и в документации так написано(если я ее правильно понимаю).
    Размышляю так: комп подключается КПК, происходит btlistener.AcceptBluetoothClient() и я получаю клиент, далее отправив компу 0x4d я сообщаю что устройство является мышом.

    Буду признателен за любую помощь. ;)
    1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0135 ]   [ 15 queries used ]   [ Generated: 18.07.25, 00:35 GMT ]