23 Jun 2008

30 applications during June

Here is an interested link with the presentation of a small Windows Mobile application each day of June.

Voici un lien intéressant avec une présentation de petites applications Windows Mobile chaque jour du mois de juin.

Les applications présentées sont les suivantes :

GPS Clock
MobileInfo
Mobile Flashlight
CallBlocker
Repeatr
GeoCash
SmartDial


http://www.cjcraft.com/blog/default,month,2008-06.aspx

20 Jun 2008

Windows Embedded NavReady

Qu'est-ce que ça apporte en plus ?

NavReady permet de "mettre rapidement sur le marché des appareils de navigation sophistiqués, pouvant être reliés à des services en ligne, à des téléphones compatibles Bluetooth, à des PC sous Windows et à Internet".
Windows Embedded NavReady est basé sur Ce5.0 car la plupart des PND actuels du marché sont basés sur cet OS.

What does it bring?

NavReady provides OEMs with powerful, innovative technologies to help them quickly bring to market smart, connected, service-oriented hand held portable navigation devices that can easily connect to online services, Bluetooth capable mobile phones, Windows-based PCs, and the Internet.

Les nouveaux composants proposés sont :
  • Live Search pour retrouver les informations concernant les POI.
  • the ability to perform Live Search to find POI information.
  • Possibilité de coupler son PND à son téléphone portable via Bluetooth pour la gestion des communications.
  • key Bluetooth technologies enabling PNDs to provide rich hands-free scenarios to end-users and managed dialup networking services to applications on the device when used together with compatible Bluetooth capable phones.
  • possibilités d'intégrer les technos MSN Direct pour obtenir des informations en temps réel sur le trafic ou le prix de l'essence par exemple.
  • enabling OEMs to integrate MSN Direct technologies by providing up-to-date information such as traffic alerts and fuel prices.
  • Possibilité de connecter son PND à son PC Vista via Windows Sideshow.
  • Inside the home, GPS devices will be able to function as a Windows Sideshow device to Windows Vista, allowing the device to interact with various Windows Vista gadgets to receive, send or display information important to the end-user.

16 Jun 2008

RAPI OpenNetCF Bug

Si vous utilisez les wrappers OPENNetCF pour RAPI, quelques fois vous obtiendrez une erreur fatale lors du transfert de fichiers, pour corriger ce problème, il suffit d'augmenter la taille du buffer data de la structure FileInformation.
If you use OPENNetCF RAPI wrapper, sometimes you will a fatal excecution exception error when tranfering files. Change the data buffer size of the structure FileInformation.

public class FileInformation //WIN32_FIND_DATA {

private byte[] data = new byte[512];


to

public class FileInformation //WIN32_FIND_DATA {

private byte[] data = new byte[560];

5 Jun 2008

Detect SDCard ou USB key insertion

Voici deux petits exemples de code permettant de détecter l'insertion d'une SDCard ou d'une clé USB :
Here are 2 code examples for detecting SDCard orUSB key insertion:
avec la WndProc :
with the WndProc:
case WM_DEVICECHANGE:
if (wParam == DBT_DEVICEARRIVAL)
{
Sleep(300);
WIN32_FIND_DATA fd;
if (FindFirstFile(L"sdmmc disk", &fd) != INVALID_HANDLE_VALUE)
{
//Add your code
}
}
break;

avec les notifications Windows CE :
With the Windows CE system notifications:
m_DevNotifyGuid = STORE_MOUNT_GUID;
memset(&m_tMsgQOptions, 0, sizeof(m_tMsgQOptions));
m_tMsgQOptions.dwSize = sizeof(m_tMsgQOptions);
m_tMsgQOptions.dwFlags = 0;
m_tMsgQOptions.dwMaxMessages = 0;
m_tMsgQOptions.cbMaxMessage = 4096;
m_tMsgQOptions.bReadAccess = TRUE;
m_hDevNotifyMsgQ = CreateMsgQueue(NULL, &m_tMsgQOptions);
m_hDevNotify = RequestDeviceNotifications( &m_DevNotifyGuid, m_hDevNotifyMsgQ, TRUE );

// Infinite Loop to detect all mounted drive
while (true)
{
// Wait for notifications
WaitForSingleObject(m_hDevNotifyMsgQ,INFINITE);
ReadMsgQueue(m_hDevNotifyMsgQ, lpBuffer,4096,&dwNbRead,1000,&dwFlags);
// Add your code
}

Pour utiliser les notifications en C#, il suffit de faire les imports des fonctions suivantes :
To use the notifications in C#, you have to import the following functions:
-RequestDeviceNotifications
-StopDeviceNotifications
-WaitForSingleObject
-CreateMsgQueue
-ReadMsgQueue
Ou de surcharger la WndProc pour la première méthode.
Or override the WndProc for the first example.

Ce code peut aussi être utile au démarrage de votre device si vous souhaitez lancer une application C# installée sur une SD.
This code can be also used if you have a startup application installed on a SDCard.