Александр Климов - Программирование КПК и смартфонов на .NET Compact Framework

Тут можно читать онлайн Александр Климов - Программирование КПК и смартфонов на .NET Compact Framework - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Питер, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Программирование КПК и смартфонов на .NET Compact Framework
  • Автор:
  • Жанр:
  • Издательство:
    Питер
  • Год:
    2007
  • Город:
    Санкт-Петербург
  • ISBN:
    978-5-91180-270-7
  • Рейтинг:
    4.88/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Александр Климов - Программирование КПК и смартфонов на .NET Compact Framework краткое содержание

Программирование КПК и смартфонов на .NET Compact Framework - описание и краткое содержание, автор Александр Климов, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Мобильные устройства все активнее вторгаются в нашу жизнь. Карманные компьютеры и смартфоны давно утратили статус дорогих игрушек и перекочевали в разряд необходимых устройств. Значит, для них необходимо создавать программное обеспечение. Так почему вы должны оставаться в стороне?

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

Книга предназначена для начинающих программистов.

Программирование КПК и смартфонов на .NET Compact Framework - читать онлайн бесплатно полную версию (весь текст целиком)

Программирование КПК и смартфонов на .NET Compact Framework - читать книгу онлайн бесплатно, автор Александр Климов
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

null, ref length);

if (Registry.ERROR_SUCCESS != result) return false;

bytes = new byte[Marshal.SizeOf(typeof(uint))];

length = (uint)bytes.Length;

keyType = Registry.KeyType.None;

result =

Registry.RegQueryValueEx(hkey, "HasKeyboard", IntPtr.Zero, ref keyType,

bytes, ref length);

if (Registry.ERROR_SUCCESS != result) return false;

dwordResult = BitConverter.ToUInt32(bytes, 0);

return (dwordResult == 1);

} finally {

if (UIntPtr.Zero != hkey) {

Registry.RegCloseKey(hkey);

}

}

}

Теперь эту функцию можно вызвать в любом месте программы, как показано в листинге 13.20.

Листинг 13.20

// Определяем наличие внешней клавиатуры

lblInfo.Text = IsKeyboard().ToString();

ВНИМАНИЕ

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

Информация о пользователе

Также с помощью реестра можно узнать информацию о пользователе устройства. За эту информацию отвечает параметр Ownerв разделе HKEY_CURRENT_USER\ControlPanel\Owner. В листинге 13.21 приведен код, который получает эту информацию.

Листинг 13.21

private void butOwner_Click(object sender, EventArgs e) {

string strOwner = "";

Registry.GetStringValue(Registry.HKCU, "\\ControlPanel\\Owner", "Owner",

ref strOwner);

lblInfo.Text = strOwner;

}

Наличие дополнительной клавиатуры

Узнать о наличии в системе подключаемой клавиатуры можно с помощью функции API или просмотрев значение соответствующего ключа в реестре. Использование реестра рассматривалось несколько раньше. В листинге 13.22 приведен код, который показывает, как можно узнать о присутствии подключенной клавиатуры с помощью функции API GetKeyboardStatus.

Листинг 13.22

///



/// Функция возвращает статус подключаемой клавиатуры и ее

/// возможности.

///

/// Функция возвращает битовую маску,

/// показывающую присутствие клавиатуры и ее возможности

///

[DllImport("coredll.dll")]

public static extern uint GetKeyboardStatus();

///



/// Показывает присутствие клавиатуры в системе

///

public const uint KBDI_KEYBOARD_PRESENT = 0x0001;

///



/// Показывает доступность клавиатуры.

/// Данный бит может быть изменен функцией

/// EnableHardwareKeyboard

///

public const uint KBDI_KEYBOARD_ENABLED = 0x0002;

///



/// Показывает наличие на клавиатуре клавиш ENTER и ESC

///

public const uint KBDI_KEYBOARD_ENTER_ESC = 0x0004;

///



/// Показывает наличие клавиш с буквами и цифрами

///

public const uint KBDI_KEYBOARD_ALPHA_NUM = 0x0008;

private void Form1_Load(object sender, EventArgs e) {

MessageBox.Show("Наличие и доступность клавиатуры: " +

IsKeyboard().ToString());

}

private static bool IsKeyboard() {

uint flags = KBDI_KEYBOARD_ENABLED | KBDI_KEYBOARD_PRESENT;

return ((GetKeyboardStatus() & flags) == flags);

}

Виброзвонок

Как правило, практически все современные модели мобильных телефонов и смартфонов поддерживают функцию виброзвонка. Следовательно, должны существовать функции для его включения и выключения. Для использования виброзвонка на смартфоне применяются функции Vibrate, VibrateStopи VibrateGetDeviceCaps.

При помощи этих функций разработчик может использовать возможности виброзвонка в своих приложениях. Соответствующий код приведен в листинге 13.23.

Листинг 13.23

///



/// Включает виброзвонок

///

/// S_OK сообщает об успешном вызове функции. В случае

/// ошибки возвращается E_FAIL

///

[DllImport("aygshell")]

private static extern int Vibrate(int cvn, IntPtr rgvn, uint fRepeat,

uint dwTimeout);

///



/// Останавливает виброзвонок

///

/// S_OK сообщает об остановке виброзвонка. В случае

/// ошибки возвращается EFAIL

///

[DllImport("aygshell")]

private static extern int VibrateStop();

///



/// Получает сведения о возможности использования виброзвонка

///

/// Перечисление VIBRATEDEVICECAPS,

/// определяющее возможности воспроизведения виброзвонка

/// устройством.

///

[DllImport("aygshell")]

private static extern int VibrateGetDeviceCaps(VibrationCapabilities caps);

///



/// Используется функцией VibrateGetDeviceCaps для определения

/// возможности воспроизведения виброзвонка.

///

public enum VibrationCapabilities : int {

VDC_Amplitude,

VDC_Frequency,

}

private void mnuStopVibrate_Click(object sender, EventArgs e) {

StopVibrate();

}

private void mnuVibrate_Click(object sender, EventArgs e) {

StartVibrate();

}

///



/// Включаем виброзвонок

///

/// В успешном случае возвращается TRUE, в случае

/// ошибки - FALSE.

public static bool StartVibrate() {

int result = Vibrate(0, IntPtr.Zero, 0xffffffff, 0xffffffff);

if (result != 0) {

return false;

}

return true;

}

///



/// Останавливаем виброзвонок

///

/// В успешном случае возвращается TRUE, в случае

/// ошибки - FALSE.

public static bool StopVibrate() {

int result = VibrateStop();

if (result != 0) {

return false;

}

return true;

}

ВНИМАНИЕ

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

Глава 14

Кирпичики .NET Compact Framework

Итак, изучение .NET Compact Framework подходит к концу. Мы с вами рассмотрели различные аспекты программирования для карманных компьютеров и смартфонов. Напоследок я хочу предложить вам несколько маленьких советов-кирпичиков, с помощью которых вы сможете построить свое новое приложение. Часть этих советов уже встречалась вам на страницах этой книги. Но, может быть, вы не обратили на них внимания или не помните, где искать нужный вам кусок кода. Поэтому я отобрал часть этих советов и поместил их в отдельную главу. Эту главу можно рассматривать как справочный материал

Узнать версию .NET Compact Framework

В папке Windows есть утилита CGACUTIL.EXE , которая выводит номер версии установленной .NET Compact Framework. Если нужно программно узнать номер версии, то следует воспользоваться кодом, приведенным в листинге 14.1.

Листинг 14.1

// Узнаем версию установленной .NET Compact Framework

txtAppDir.Text = Environment.Version.ToString();

Узнать версию операционной системы

Для получения версии операционной системы нужно вызвать уже свойство OSVersion, как показано в листинге 14.2.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Александр Климов читать все книги автора по порядку

Александр Климов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Программирование КПК и смартфонов на .NET Compact Framework отзывы


Отзывы читателей о книге Программирование КПК и смартфонов на .NET Compact Framework, автор: Александр Климов. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x