Разработчики из Windows Mobile Team в своем блоге анонсировали инструмент мониторинга использования API функций в приложениях для Windows Mobile – Windows Mobile API Usage Tool.
Windows Mobile API Usage Tool сканирует ваше приложение для Windows Mobile (в формате cab, msi, или просто бинарник), выполняет статический анализ (static analysis), и выдает отчет об использовании API и других системных ресурсов.
В дистрибутив также входит файл deprecated.txt, в котором содержится текущий список упраздненных (deprecated) функций для Windows Mobile. Можно также получить отчет об использовании этих функций в вашем приложении. Использование Windows Mobile API Usage Tool это эффективный способ проверить то, как ваше приложение будет себя вести если deprecated-функции будут удалены из Windows Mobile.
Windows Mobile API Usage Tool работает из командной строки и выдает результат в виде базы данных SQL Compact Edition (.sdf файл). При вызове с ключем /deprecated также генерируются несколько полезных отчетов.

Previous ArticleNext Article
Технический директор IT-Dimension, компании-разработчика кросс-платформенного программного обеспечения

Leave a Reply

Your email address will not be published. Required fields are marked *

П.

Первое приложение для Windows Mobile на C++/wxWinCE

В прошлый раз я рассказывал о том как собрать библиотеку wxWinCE для разработки приложений для Windows Mobile.

Сегодня мы поговорим о том, как начать программировать с использованием этой библиотеки и как создать простейшее приложение для Windows Mobile с ее помощью.

Итак, что у нас уже должно быть: собранная библиотека wxWinCE, создана переменная окружения WXWIN, которой присвоен путь к дистрибутиву wxWinCE, файлы статических библиотек размещены в папках:

  • $(WXWIN)/lib/evc_armv4_lib для платформы PocketPC 2003
  • $(WXWIN)/lib/evc_armv4t_lib для платформы Windows Mobile 6

Для начала нам необходимо создать новый проект. Для этого в Visual Studio выбираем пункт меню File -> New -> Project… В диалоговом окне создания нового проекта переходим в раздел Visual C++ -> Smart Device и указываем тип проекта Win32 Smart Device Project.

В мастере настройки свойств проекта выбираем платформы, для которых нам необходимо собрать наше приложение.

В разделе Application Settings выбираем тип проекта Windows Application и в Additional Options устанавливаем маркер на Empty Project.

Жмем Finish.

В созданный проект добавляем новый cpp-файл и пишем в нем следующее:

#include <wx/wx.h>

class wxWinCETestMainFrame : public wxFrame
{
protected:
	void OnExit(wxCommandEvent & event)
	{
		Close();
	}
public:
	wxWinCETestMainFrame()
		: wxFrame(NULL, wxID_ANY, _("wxWinCE Test"))
	{
		wxMenuBar * menuBar = new wxMenuBar;
		wxMenu * fileMenu = new wxMenu;
		fileMenu->Append(wxID_EXIT, _("Exit"));
		menuBar->Append(fileMenu, _("File"));
		SetMenuBar(menuBar);

		Connect(wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, 
			wxCommandEventHandler(wxWinCETestMainFrame::OnExit));
	}
};

class wxWinCETestApp : public wxApp
{
public:
	virtual bool OnInit()
	{
		wxWinCETestMainFrame * frame = new wxWinCETestMainFrame;
		SetTopWindow(frame);
		frame->Show();
		return true;
	}
};

IMPLEMENT_APP(wxWinCETestApp)

Открываем окно свойств проекта, переходим в раздел C/C++ -> General и в список каталогов для поиска заголовочных файлов (Additional Include Directories) добавляем следующие значения:

  • Для платформы PocketPC 2003
    • Debug
      • $(WXWIN)\include
      • $(WXWIN)\lib\evc_armv4_lib\winced
    • Release
      • $(WXWIN)\include
      • $(WXWIN)\lib\evc_armv4_lib\wince
  • Для платформы Windows Mobile 6
    • Debug
      • $(WXWIN)\include
      • $(WXWIN)\lib\evc_armv4t_lib\winced
    • Release
      • $(WXWIN)\include
      • $(WXWIN)\lib\evc_armv4t_lib\wince

В разделе Linker -> General в свойстве Additional Library Directories дописываем путь к статическим библиотекам wxWinCE:

  • $(WXWIN)\lib\evc_armv4_lib для платформы PocketPC 2003
  • $(WXWIN)\lib\evc_armv4t_lib для платформы Windows Mobile 6

В разделе C/C++ -> Code Generation устанавливаем свойство Enable C++ Exceptions в No (то же значение что и в проекте самой библиотеки wxWinCE) и для каждой конфигурации каждой платформы значение свойства Runtime Library устанавливаем в то значение, которое оно имеет в проекте библиотеки wxWinCE. Значение обоих этих свойств у нашего проекта и у проекта библиотеки должны быть одинаковыми.

В разделе C/C++ -> Preprocessor значение свойства Preprocessor Definitions для каждой конфигурации для каждой платформы устанавливаем то, которое оно имеет в проекте библиотеки wxWinCE. Лучше всего значение этого свойства скопировать с одного проекта в другой.

Теперь нам необходимо добавить в проект файл ресурсов (.rc) и в нем прописать следующее:


#include <wx/msw/wx.rc>

Это очень важный шаг настройки проекта, но о нем очень часто забывают. Зачем же это нужно? Затем что файл wx/msw/wx.rc содержит описание некоторых ресурсов приложения, которые используются при создании строк меню и панелей инструментов. Если этот файл не включить в сборку, то при создании строк меню будут постоянно возникать ошибки.

После того, как мы добавили файл ресурсов, в свойствах проекта идем в раздел Resources -> General и в Additional Include Directories добавляем значение $(WXWIN)\include.

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

После того как приложение успешно собрано, мы должны получить что-то подобное:

Скриншот минимального приложения для wxWinCE
Скриншот минимального приложения для wxWinCE

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

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

M.

Microsoft официально объявила о выходе Windows Mobile 6.5 и новых сервисов

Компания Microsoft на выставке GSMA Mobile World Congress официально представила новую версию своей мобильной операционной системы Windows Mobile 6.5, а также новые сервисы Windows Marketplace for Mobile и My Phone.

Windows Mobile 6.5 - ScreenshotsИз значимых нововведений можно отметить новый пользовательский интерфейс системы, который претерпел значительных изменений, и позволяет пользовать работать с ним без помощи стилуса, и новую версию браузера –  Internet Explorer 6.

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

Сервис Windows Marketplace for Mobile представляет собой аналог Android Market или AppStore от Apple. С его помощью пользователи смогут покупать ПО для Windows Mobile через Internet.

Пока Microsoft не огласила условия, на которых разработчики смогут размещать ПО в Windows Marketplace for Mobile.