begin process at 2012 02 05 19:01:31
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

PPC :: Réseau & Internet

 > ENVOYER UN SMS DEPUIS SON APPLICATION WINDOWS MOBILE

ENVOYER UN SMS DEPUIS SON APPLICATION WINDOWS MOBILE


 Information sur la source

Note :
Aucune note
Catégorie :PPC :: Réseau & Internet Source .NET ( DotNet ) Classé sous :SMS, Envoyer SMS, Send SMS, SmsClose, SmsOpen Niveau :Expert Date de création :28/08/2008 Date de mise à jour :30/08/2008 01:52:40 Vu / téléchargé :22 616 / 837

Auteur : boutemine

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (9)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Bonjour
L'envoi d'sms est maintenant simple depuis une application windows mobile,
Il suffit d'ajouter le code de la classe SMSSender pour simplifier l'opération
La fonction a utiliser pour l'envoi est SendSMS
Elle reçoit comme paramètre le texte du message et le numéros de téléphone (et son type) du destinataire.

Le code utilisé pour l'envoi du message est inspiré du livre Programming Microsoft Windows CE 3rd edition.

Source bien commenté pour les débutants.

Attention, l'application fonctionne avec toutes les versions windows mobile a condition que le simulateur doit supporter la fonctionalité de téléphonie
Windows Mobile 2003 : Marche tres bien
Windows Mobile 5 : Marche qu'avec smartphone
Windows Mobile 6 : On peut envoyer des sms vers le Cellular Emulator inclus dans l'SDK.

En plus, elle nécessite des droits d'administration, donc l'application doit être signer par un certificat pour exécuter le code.

Bien sur elle marche en pratique avec tout device possédant la fonctionnalité de téléphonie.

Source

  • //'=====================================================================================
  • //' # # '
  • //' ## # # # # @ @ @ '
  • //' ### " ##### # # # # " " # '
  • //' ## # ## ##### # # #### # # # # # '
  • //' ########### ####### ## # # ## # # # # # # '
  • //' ## # #### # # ## # # # # '
  • //' ## ## @ # # ##### # # # # # # # ## '
  • //' # " ## #### # ## # #### ###### # ## '
  • //' # ##### ## # ## @ # # # # # '
  • //' # # " # # # # # # '
  • //' # ## # # ################################# '
  • //' ##### ##### ### # ## '
  • //' ###### # ## '
  • //'=====================================================================================
  • // Utilisation Libre
  • // Auteur: Boutemine Oualid
  • // Juste une méthode pour les puristes.
  • // il faut utiliser les classes du compact framework pour
  • // l'envoi d'sms (voir frmMain).
  • using System;
  • using System.Runtime.InteropServices;
  • using System.Text;
  • namespace EnvoyerSMS
  • {
  • public static class SMSSender
  • {
  • // Informations des numéros de tél du destinataire.
  • public enum AddressType
  • {
  • Unknown,
  • International,
  • National,
  • NetworkSpecific,
  • Subscriber,
  • Alphanumeric,
  • Abbreviated
  • }
  • public struct PhoneAddress
  • {
  • public AddressType AddressType;
  • public string PhoneNumber;
  • }
  • // Méthode de communication
  • public static string SMS_MSGTYPE_TEXT = "Microsoft Text SMS Protocol"; // Protocol d'envoi
  • public static long SMS_MODE_SEND = 0x00000002; // Mode d'envoi
  • public static long SMS_OPTION_DELIVERY_NONE = 0x00000000; // Pas d'options speciales
  • public static long SMS_OPTION_DELIVERY_NO_RETRY = 0x00000001; // le message ne sera pas reporté
  • // pour la livraison selon les politiques du routeur.
  • // ans cette option, le SMS sera de nouveau
  • // envoyé jusqu'à ce que le routeur le passe
  • public static long PS_MESSAGE_OPTION_NONE = 0x00000000;//aucune notification sera renvoyé à la demande
  • // Méthode d'encodage du texte d'sms.
  • public enum SMS_DATA_ENCODING
  • {
  • SMSDE_OPTIMAL = 0, // la bonne méthode de codage des données pour optimizer la bande passance lors d'envoi.
  • SMSDE_GSM, // forcer un encodage 7-bit spécifié dans la spécification GSM.
  • SMSDE_UCS2, // utilise la methode UCS2 pour l'encodage des données.
  • }
  • // Méthode de communication avec le centre de services et le destinataire.
  • public enum PROVIDER_SPECIFIC_MESSAGE_CLASS
  • {
  • PS_MESSAGE_CLASS0 = 0, //indique que le message doit être affiché immédiatement mais ne soit pas
  • // stockés sur la carte SIM.
  • PS_MESSAGE_CLASS1, // indique que le centre de service traitant le message doit être notifié
  • // lorsque le message passe à travers son réseaux et il sera sauvegardé.
  • PS_MESSAGE_CLASS2, // Indique que le méssage doit etre passer d'abord vers le destinataire avant
  • // que la notification sera envoyer vers le centre de service traitant le message
  • // Si la carte SIM est pleine, un message d'erreur est
  • // envoyé au centre de service.
  • PS_MESSAGE_CLASS3, // lorsque le message a été envoyé avec succès à la destination
  • // et peut être stockés sur la carte SIM, le centre de service recevra une notification.
  • }
  • // Ces options sert a préciser qui (le cas échéant) des précédentes notifications
  • // envoyées au centre de service devrait être remplacé par le message en cours.
  • // Le type spécifié par l'option assure que toutes les précédentes notifications de ce type se remplacée
  • // par la présente notification. Par exemple, si PSRO_REPLACE_TYPE3 est fixé,
  • // toutes les notifications de type 3 seront déplacées avec la notification en cours.
  • public enum PROVIDER_SPECIFIC_REPLACE_OPTION
  • {
  • PSRO_NONE = 0,
  • PSRO_REPLACE_TYPE1,
  • PSRO_REPLACE_TYPE2,
  • PSRO_REPLACE_TYPE3,
  • PSRO_REPLACE_TYPE4,
  • PSRO_REPLACE_TYPE5,
  • PSRO_REPLACE_TYPE6,
  • PSRO_REPLACE_TYPE7,
  • PSRO_RETURN_CALL,
  • PSRO_DEPERSONALIZATION,
  • }
  • // Ces champs de cette structure utilisent toutes les énumérations que
  • // nous avons défini ci-dessus et sont transmises lors de l'envoi / réception
  • // de l'SMS sous forme de chaîne.
  • // dwMessageOptions, s'encode dans un entier, et spécifie autres détails énoncés dans la spécification GSM 3,40.
  • public struct TEXT_PROVIDER_SPECIFIC_DATA
  • {
  • public IntPtr dwMessageOptions;
  • public PROVIDER_SPECIFIC_MESSAGE_CLASS psMessageClass;
  • public PROVIDER_SPECIFIC_REPLACE_OPTION psReplaceOption;
  • }
  • // Fonctions native d'envoi d'sms.
  • [DllImport("sms.dll")]
  • private static extern IntPtr SmsOpen(String ptsMessageProtocol,
  • IntPtr dwMessageModes, ref IntPtr psmshHandle, IntPtr phMessageAvailableEvent);
  • [DllImport("sms.dll")]
  • private static extern IntPtr SmsSendMessage(IntPtr smshHandle, IntPtr psmsaSMSCAddress, IntPtr psmsaDestinationAddress,
  • IntPtr pstValidityPeriod, byte[] pbData, IntPtr dwDataSize, byte[] pbProviderSpecificData, IntPtr dwProviderSpecificDataSize,
  • SMS_DATA_ENCODING smsdeDataEncoding, IntPtr dwOptions, IntPtr psmsmidMessageID);
  • // Résultat de la fonction
  • private const long S_OK = 0; // IntPrt.Zero
  • private const long E_FAIL = 0x80004005;
  • private const long E_OUTOFMEMORY = 0x8007000E;
  • private const long E_INVALIDARG = 0x80070057;
  • private const long E_UNEXPECTED = 0x8000FFFF;
  • [DllImport("sms.dll")]
  • private static extern IntPtr SmsClose(IntPtr smshHandle);
  • public unsafe static void SendSMS(PhoneAddress destAddress, string smsMessage)
  • {
  • // Pointeur pour le sms.
  • IntPtr hSms = IntPtr.Zero;
  • try
  • {
  • // Informe le SE qu'on va faire une opération d'acces vers la carte SIM pour l'envoi d'sms (SMS_MODE_SEND)
  • IntPtr res = SmsOpen(SMS_MSGTYPE_TEXT, (IntPtr)SMS_MODE_SEND, ref hSms, IntPtr.Zero);
  • if (res != IntPtr.Zero)
  • throw new Exception("Carte SIM inaccessible.");
  • Byte[] bDest = new Byte[516];
  • fixed (byte* pAddr = bDest)
  • {
  • // Ecriture du type du numéros de téléphone dans le premier bloc de memoire
  • byte* pCurrent = pAddr; // Pointeur de déplacement.
  • // 4 premiers octets: Type du numéros du destinataire.
  • Marshal.WriteInt32((IntPtr)pCurrent, (int)destAddress.AddressType);
  • pCurrent += 4; // se déplace 4 octet et prépare l'opération d'écriture suivante.
  • // Ecriture du numéros du destinataire.
  • foreach (byte b in Encoding.Unicode.GetBytes(destAddress.PhoneNumber))
  • {
  • Marshal.WriteByte((IntPtr)pCurrent, b);
  • pCurrent++; // se déplace 1 octet.
  • }
  • // On place quelques options pour le message(TEXT_PROVIDER_SPECIFIC_DATA).
  • TEXT_PROVIDER_SPECIFIC_DATA tpsd = new TEXT_PROVIDER_SPECIFIC_DATA();
  • tpsd.dwMessageOptions = (IntPtr)PS_MESSAGE_OPTION_NONE;
  • tpsd.psMessageClass = PROVIDER_SPECIFIC_MESSAGE_CLASS.PS_MESSAGE_CLASS0;
  • tpsd.psReplaceOption = PROVIDER_SPECIFIC_REPLACE_OPTION.PSRO_NONE;
  • // Transfromation de la structure vers un buffer.
  • IntPtr pTpsd = Marshal.AllocHGlobal(Marshal.SizeOf(tpsd));
  • Marshal.StructureToPtr(tpsd, pTpsd, true);
  • // buffer des options.
  • Byte[] bufProvData = new Byte[12]; // 4 Octets (Int) * 3 options = 12 octet.
  • Marshal.Copy(pTpsd, bufProvData, 0, 12);
  • // buffer du Message
  • byte[] bMessage = Encoding.Unicode.GetBytes(smsMessage);
  • int nMsgSize = bMessage.Length;
  • // Envoi de message
  • res = SmsSendMessage(hSms, IntPtr.Zero, (IntPtr)pAddr, IntPtr.Zero,
  • bMessage, (IntPtr)nMsgSize, bufProvData, (IntPtr)bufProvData.Length,
  • SMS_DATA_ENCODING.SMSDE_OPTIMAL, (IntPtr)SMS_OPTION_DELIVERY_NONE,
  • IntPtr.Zero);
  • // les parametres de la fonction:
  • /* - smshHandle : pointeur du sms obtenu apres l'appel a la fonction SmsOpen
  • * - psmsaSMSCAddress : parameter indiquant quel fournisseur de service
  • * (Short Message Service Center -SMSC-) le message sera lui passé pour etre routé.
  • * null est recommandé.
  • * - psmsaDestinationAddress: pointeur vers l'adresse du destinataire (Numéros de tel et son type) (pAddr dans notre exemple)
  • * - pstValidityPeriod : Durée pandant laquelle l'sms est valide, null est recommandé.
  • * - pbData : Le texte de l'sms (pointeur vers la tete du texte).
  • * - dwDataSize: Taille du message (en octet).
  • * - pbProviderSpecificData : infos spécifique du provider(TEXT_PROVIDER_SPECIFIC_DATA), spécifique pour certain opérateurs.
  • * - dwProviderSpecificDataSize: Taille du buffer.
  • * - smsdeDataEncoding : Méthode d'encodage du SMS.
  • * - dwOptions : Options d'envoi.
  • * - psmsmidMessageID : Utilisé avec la fonction SmsGetMessageStatus.
  • */
  • if (res != IntPtr.Zero)
  • throw new Exception("Impossible d'envoyer le message.");
  • }
  • }
  • finally
  • {
  • // Fin d'opération d'utilisation de la carte sim.
  • // Libération des ressources mémoire.
  • SmsClose(hSms);
  • }
  • }
  • }
  • }
//'=====================================================================================
//'                           #  #                                                     '
//'                 ##        #  #         # #      @ @ @                              '
//'    ###    "    #####       #  #          # #      " "      #                       '
//'   ##  #     ##    #####    #  #   ####    # #        #  #   #                      '
//'  ########### #######     ##   #  #    ##   # #    #   #  #   #                     '
//' ##                      #            ####  # #   ##    #  #   #                #   '
//'        ## ## @           #  #    #####      # #  #  #   #  #  #                ##  '
//'      #        "        ##    #### #       ##  # #### ######  #                  ## '
//'       #          #####  ##  #   ##   @  #                           #  #  #      # '
//'        #                   #          " #     #                     #  #  #     #  '
//'         #                ##            #    #  #################################   '
//'          #####      #####           ###    # ##                                    '
//'               ######                      #                                ##      '
//'=====================================================================================
// Utilisation Libre
// Auteur: Boutemine Oualid
// Juste une méthode pour les puristes.
// il faut utiliser les classes du compact framework pour
// l'envoi d'sms (voir frmMain).

using System;
using System.Runtime.InteropServices;
using System.Text;

namespace EnvoyerSMS
{
    public static class SMSSender
    {
        // Informations des numéros de tél du destinataire.
        public enum AddressType
        {
            Unknown,
            International,
            National,
            NetworkSpecific,
            Subscriber,
            Alphanumeric,
            Abbreviated
        }
        public struct PhoneAddress
        {
            public AddressType AddressType;
            public string PhoneNumber;
        }

        // Méthode de communication
        public static string SMS_MSGTYPE_TEXT = "Microsoft Text SMS Protocol"; // Protocol d'envoi
        public static long SMS_MODE_SEND = 0x00000002; // Mode d'envoi
        public static long SMS_OPTION_DELIVERY_NONE = 0x00000000;  // Pas d'options speciales
        public static long SMS_OPTION_DELIVERY_NO_RETRY = 0x00000001;  // le message ne sera pas reporté 
        // pour la livraison selon les politiques du routeur.
        // ans cette option, le SMS sera de nouveau 
        // envoyé jusqu'à ce que le routeur le passe
        public static long PS_MESSAGE_OPTION_NONE = 0x00000000;//aucune notification sera renvoyé à la demande

        // Méthode d'encodage du texte d'sms.
        public enum SMS_DATA_ENCODING
        {
            SMSDE_OPTIMAL = 0,  // la bonne méthode de codage des données pour optimizer la bande passance lors d'envoi.
            SMSDE_GSM,          // forcer un encodage 7-bit spécifié dans la spécification GSM.
            SMSDE_UCS2,         // utilise la methode UCS2 pour l'encodage des données.
        }

        // Méthode de communication avec le centre de services et le destinataire.
        public enum PROVIDER_SPECIFIC_MESSAGE_CLASS
        {
            PS_MESSAGE_CLASS0 = 0, //indique que le message doit être affiché immédiatement mais ne soit pas 
            // stockés sur la carte SIM.
            PS_MESSAGE_CLASS1,  // indique que le centre de service traitant le message doit être notifié
            // lorsque le message passe à travers son réseaux et il sera sauvegardé. 
            PS_MESSAGE_CLASS2,  // Indique que le méssage doit etre passer d'abord vers le destinataire avant 
            // que la notification sera envoyer vers le centre de service traitant le message
            // Si la carte SIM est pleine, un message d'erreur est 
            // envoyé au centre de service.
            PS_MESSAGE_CLASS3,  // lorsque le message a été envoyé avec succès à la destination 
            // et peut être stockés sur la carte SIM, le centre de service recevra une notification.
        }

        // Ces options sert a préciser qui (le cas échéant) des précédentes notifications 
        // envoyées au centre de service devrait être remplacé par le message en cours. 
        // Le type spécifié par l'option assure que toutes les précédentes notifications de ce type se remplacée 
        // par la présente notification. Par exemple, si PSRO_REPLACE_TYPE3 est fixé, 
        // toutes les notifications de type 3 seront déplacées avec la notification en cours. 
        public enum PROVIDER_SPECIFIC_REPLACE_OPTION
        {
            PSRO_NONE = 0,
            PSRO_REPLACE_TYPE1,
            PSRO_REPLACE_TYPE2,
            PSRO_REPLACE_TYPE3,
            PSRO_REPLACE_TYPE4,
            PSRO_REPLACE_TYPE5,
            PSRO_REPLACE_TYPE6,
            PSRO_REPLACE_TYPE7,
            PSRO_RETURN_CALL,
            PSRO_DEPERSONALIZATION,
        }
        // Ces champs de cette structure utilisent toutes les énumérations que
        // nous avons défini ci-dessus et sont transmises lors de l'envoi / réception 
        // de l'SMS sous forme de chaîne. 
        // dwMessageOptions, s'encode dans un entier, et spécifie autres détails énoncés dans la spécification GSM 3,40. 

        public struct TEXT_PROVIDER_SPECIFIC_DATA
        {
            public IntPtr dwMessageOptions;
            public PROVIDER_SPECIFIC_MESSAGE_CLASS psMessageClass;
            public PROVIDER_SPECIFIC_REPLACE_OPTION psReplaceOption;
        }

        // Fonctions native d'envoi d'sms.
        [DllImport("sms.dll")]
        private static extern IntPtr SmsOpen(String ptsMessageProtocol,
                IntPtr dwMessageModes, ref IntPtr psmshHandle, IntPtr phMessageAvailableEvent);

        [DllImport("sms.dll")]
        private static extern IntPtr SmsSendMessage(IntPtr smshHandle, IntPtr psmsaSMSCAddress, IntPtr psmsaDestinationAddress,
            IntPtr pstValidityPeriod, byte[] pbData, IntPtr dwDataSize, byte[] pbProviderSpecificData, IntPtr dwProviderSpecificDataSize,
            SMS_DATA_ENCODING smsdeDataEncoding, IntPtr dwOptions, IntPtr psmsmidMessageID);
        // Résultat de la fonction
        private const long S_OK = 0; // IntPrt.Zero
        private const long E_FAIL = 0x80004005;
        private const long E_OUTOFMEMORY = 0x8007000E;
        private const long E_INVALIDARG = 0x80070057;
        private const long E_UNEXPECTED = 0x8000FFFF;

        [DllImport("sms.dll")]
        private static extern IntPtr SmsClose(IntPtr smshHandle);


        public unsafe static void SendSMS(PhoneAddress destAddress, string smsMessage)
        {
            // Pointeur pour le sms.
            IntPtr hSms = IntPtr.Zero;

            try
            {
                // Informe le SE qu'on va faire une opération d'acces vers la carte SIM pour l'envoi d'sms (SMS_MODE_SEND)
                IntPtr res = SmsOpen(SMS_MSGTYPE_TEXT, (IntPtr)SMS_MODE_SEND, ref hSms, IntPtr.Zero);

                if (res != IntPtr.Zero)
                    throw new Exception("Carte SIM inaccessible.");
                Byte[] bDest = new Byte[516];
                fixed (byte* pAddr = bDest)
                {
                    // Ecriture du type du numéros de téléphone dans le premier bloc de memoire
                    byte* pCurrent = pAddr; // Pointeur de déplacement.
                    // 4 premiers octets: Type du numéros du destinataire.
                    Marshal.WriteInt32((IntPtr)pCurrent, (int)destAddress.AddressType);
                    pCurrent += 4; // se déplace 4 octet et prépare l'opération d'écriture suivante.
                    // Ecriture du numéros du destinataire.
                    foreach (byte b in Encoding.Unicode.GetBytes(destAddress.PhoneNumber))
                    {
                        Marshal.WriteByte((IntPtr)pCurrent, b);
                        pCurrent++; // se déplace 1 octet.
                    }
                    // On place quelques options pour le message(TEXT_PROVIDER_SPECIFIC_DATA).
                    TEXT_PROVIDER_SPECIFIC_DATA tpsd = new TEXT_PROVIDER_SPECIFIC_DATA();
                    tpsd.dwMessageOptions = (IntPtr)PS_MESSAGE_OPTION_NONE;
                    tpsd.psMessageClass = PROVIDER_SPECIFIC_MESSAGE_CLASS.PS_MESSAGE_CLASS0;
                    tpsd.psReplaceOption = PROVIDER_SPECIFIC_REPLACE_OPTION.PSRO_NONE;

                    // Transfromation de la structure vers un buffer.
                    IntPtr pTpsd = Marshal.AllocHGlobal(Marshal.SizeOf(tpsd));
                    Marshal.StructureToPtr(tpsd, pTpsd, true);

                    // buffer des options.
                    Byte[] bufProvData = new Byte[12]; // 4 Octets (Int) * 3 options = 12 octet.
                    Marshal.Copy(pTpsd, bufProvData, 0, 12);

                    // buffer du Message
                    byte[] bMessage = Encoding.Unicode.GetBytes(smsMessage);
                    int nMsgSize = bMessage.Length;

                    // Envoi de message
                    res = SmsSendMessage(hSms, IntPtr.Zero, (IntPtr)pAddr, IntPtr.Zero,
                              bMessage, (IntPtr)nMsgSize, bufProvData, (IntPtr)bufProvData.Length,
                              SMS_DATA_ENCODING.SMSDE_OPTIMAL, (IntPtr)SMS_OPTION_DELIVERY_NONE,
                              IntPtr.Zero);
                    // les parametres de la fonction:
                    /* - smshHandle : pointeur du sms obtenu apres l'appel a la fonction SmsOpen
                     * - psmsaSMSCAddress : parameter indiquant quel fournisseur de service
                     *                      (Short Message Service Center -SMSC-) le message sera lui passé pour etre routé.
                     *                      null est recommandé.
                     * - psmsaDestinationAddress: pointeur vers l'adresse du destinataire (Numéros de tel et son type) (pAddr dans notre exemple)
                     * - pstValidityPeriod : Durée pandant laquelle l'sms est valide, null est recommandé.
                     * - pbData : Le texte de l'sms (pointeur vers la tete du texte).
                     * - dwDataSize: Taille du message (en octet).
                     * - pbProviderSpecificData : infos spécifique du provider(TEXT_PROVIDER_SPECIFIC_DATA), spécifique pour certain opérateurs.
                     * - dwProviderSpecificDataSize: Taille du buffer.
                     * - smsdeDataEncoding : Méthode d'encodage du SMS.
                     * - dwOptions : Options d'envoi.
                     * - psmsmidMessageID : Utilisé avec la fonction SmsGetMessageStatus.
                     */
                    if (res != IntPtr.Zero)
                        throw new Exception("Impossible d'envoyer le message.");
                }
            }
            finally
            {
                // Fin d'opération d'utilisation de la carte sim.
                // Libération des ressources mémoire.
                SmsClose(hSms);
            }
        }
    }
}

 Conclusion

Le code source précédent est une implémentation non sophistiqué pour les puristes

Mais le compact framework contient une autre méthode plus simple

Il suffit d'ajouter une référence vers l'assembly
Microsoft.WindowsMobile.PocketOutlook

On ajoute un import du namespace dans notre code et colle ce bout de code
using Microsoft.WindowsMobile.PocketOutlook;


SmsMessag e sms = new SmsMessage(txtDestNbr.Text, txtMessage.Text);
sms.Send();

Plus simple nespa !!

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

30 août 2008 01:51:41 :
- Mise a jour de l'application vers Windows mobile 6 - Ajout de la méthode d'envoi d'sms via les classes du compact framework(La plus simple).
30 août 2008 01:52:40 :
- Mise a jour de la capture d'écran

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) EDITEUR DE REGISTRE POUR WINDOWS MOBILE 5.X ET 6.X
Source avec Zip Source avec une capture Source .NET (Dotnet) [WINDOWS PHONE 7] EDITEUR DE NOTES SIMPLE
Source avec Zip Source avec une capture Source .NET (Dotnet) [.NET COMPACT FRAMEWORK] CLASSE SENDKEYS
Source avec Zip Source avec une capture Source .NET (Dotnet) [.NET COMPACT FRAMEWORK] CONNAÎTRE ET MODIFIER LE NIVEAU DE ...
Source avec Zip Source avec une capture Source .NET (Dotnet) [.NET COMPACT FRAMEWORK] UTILISER LA FENETRE CHOOSECONTACTDI...

 Sources de la même categorie

Source .NET (Dotnet) INFORMATIONS UTILES SUR LA CARTE SIM ET LE FOURNISSEUR DE SE... par boutemine
Source .NET (Dotnet) [DÉBUTANTS]SAVOIR L'ADRESSE IP ET LE NOM DE LA MACHINE [COMP... par boutemine
Source avec Zip Source avec une capture Source .NET (Dotnet) IPSWITCHERCE : CHANGER L'IP DE SON POCKET PC RAPIDEMENT par Ptitdave
Source avec Zip Source avec une capture TÉLÉCOMMANDE POUR DREAMBOX par Tropic
Source avec Zip POCKETSNTP par fredb26

Commentaires et avis

Commentaire de dvwyns le 05/02/2009 22:12:35

Salut boutemine,
Que veux tu dire par "l'application doit être signer par un certificat pour exécuter le code"?
Quel type de certificat?
Merci.

Commentaire de boutemine le 06/02/2009 14:27:09

http://www.boutemine-oualid.qsh.me/post/Developpement-NET-Compact-Framework-LA-SECURITE-WINDOWS-MOBILE-6-ILLUSTREE-PAS-A-PAS.aspx

Commentaire de dvwyns le 13/02/2009 10:48:38

Bonjour Boutemine,
Je me permets de te redemander conseil vu tes connaissances dans le domaine.
Voilà, je dois faire un antivol, pour htc diamond (donc si j'ai bien compris un pocketPc phone) tournant sur windows mobile 6, qui va envoyer un sms (a un n° donné) lorsque le voleur introduira sa carte sim.
Apparemment le code que tu proposes ne fonctionne pas pour mon application (On ne peut qu'envoyer des sms vers le Cellular Emulator inclus dans l'SDK).
Est ce que l'assembly Microsoft.WindowsMobile.PocketOutlook et son objet SmsMessage fonctionne sur WM6 ?
Je n'ai malheureusement pas l'émulateur approprié, ni le htc (je ne l'aurai qu'un temps restreint) pour faire ce test, pour l'instant je travaille sur l'émulateur de pocketPC 2003 SE. Peut être as-tu une adresse pour l'émulateur approprié? (j'ai beau chercher,je ne le trouve pas).
C'est la première fois que je travaille sur une application mobile. Donc si ça ne te dérange pas que je te pose encore des questions, peux tu me donner une adresse ou je pourrais les poser autre part qu'ici (histoire de ne pas polluer ce topic de questions diverses n'ayant rien a voir).

Merci d'avance pour ton aide :D

Commentaire de boutemine le 13/02/2009 12:33:56

Je t'envoie au forum MSDN (Partie Smart Device et Compact Framework)
http://social.msdn.microsoft.com/Forums/en-US/category/smartdevicedevelopment/

Commentaire de dvwyns le 13/02/2009 13:25:39

ok merci...

Commentaire de myk68 le 18/03/2009 09:41:43

Bonjour Boutemine, j'aimerais savoir si il y a aussi un moyen de receptionné les sms et les afficher dans une application?
L'envoi d'sms fonctionne parfaitement avec l'assembly Microsoft.WindowsMobile.PocketOutlook et son objet SmsMessage mais je n'ai trouvé aucune info sur la réception.

Merci d'avance pour votre aide

Commentaire de loulou2893 le 19/07/2009 14:04:42

Bonjour

Je ne comprend pas comment faire pour installer le logiciel ZIP sur mon pc vista

Merci de votre aide

Thibault

Commentaire de spilz le 28/10/2009 10:19:09

bonjour, très pratique ton code, merci

les sms partent bien

j'ai une question tout de meme, est-il possible que le sms envoyé soit enregistré après dans les messages envoyés sur le téléphone, et avoir l'accusé de réception ?

merci

Commentaire de lassad_haddaji le 28/01/2010 12:46:45

est ce que possible de le tester avec sdk, parce que chaque fois me dis message non envoyer, ou bien il faut le tester sur ppc? merci de me repondre

bon continuation boutmine :)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Synchronisation serveur Exchange [ par brunobaron ] Je synchronise plusieurs pocket pc et smartphones par Gprs avec les mailboxs du serveur Exchange 2003 de mon entreprise. J'ai voulu utiliser la notifi Code Mobile 2003 pour Synchro auto GPRS avec boite aux lettre Exchange 2003 [ par brunobaron ] Je synchronise plusieurs pocket pc et smartphones par Gprs avec les mailboxs du serveur Exchange 2003 de mon entreprise. J'ai voulu utiliser la notifi Application SMS [ par orthlieb ] Bonjour,Je souhaite développer une application d'envoi de SMS sur un PDA avec modem intégré (quelque soit le model). Je suis preneur de recupereation des sms [ par krypton78 ] Bonjour les gens, je suis a la recherche d'informations concernant la recuperation des sms sur pocket pc. Je m'explique:j'aimerais sauvegarder mes sms SMS via Pocket PC [ par pas glop ] Voila, j'y vais quelqu'part sur Internet, et je  vois que un SMS est compatible avec Orange SPV M2000Comment on envoye un SMS via Pocket PC Recuperer sms d'un PDA [ par fdiedler2000 ] Bonjour,Est il possible de récupérer les SMS dans ma boite de réception ? Je possède un S200 (M600 chez Orange).Je developpe sous VB.NET - Compact Fra Récupérer des sms que j'ai supprimé après l'initialisation de mon samsung U-600? [ par zaarachidja ] Bonjour, voila trouvé sur le forum un code pour initialiser le samsung U-600 mais j'ai pas cru que ça supprimé tout!!!! donc je voulais savoir si y a Lancer un MIDlet lors de la réception d'un SMS [ par jeje454 ] envoi sms c++ [ par helve ] Bonjour,je travail avec windows mobile 6 standard en c++ et j'aimerais envoyer un sms.J'ai trouvé la méthode smssendmessage, mais j'ai quelques soucis vote par sms [ par prog30 ] Bonjour à tous!je suis étudiant en téléinformatique en train de débuter mon stage de fin d'étude sur les plateformes sms au sein d'un opérateur gsm, l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,744 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales