IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Suppression SMS sur carte SIM


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2012
    Messages
    87
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 87
    Par défaut Suppression SMS sur carte SIM
    Bonjour,

    J'ai pas trouvé de partie spécifique .net CF dans la partie mobile donc je me permet de poster ici.

    J'ai deux problèmes qui me hante depuis quelques semaines.

    J'ai développé une application pour windows mobile 6.5 en .netcf 3.5.
    Cette application entre autre est sensé intercepter les SMS entrant.
    Ceci est réaliser grâce à la classe MessageInterceptor (http://msdn.microsoft.com/en-us/library/bb932385.aspx

    Globalement ça marche sauf dans certains cas où les SMS se posent directement sur la SIM sans passage par l'interceptor sans que je sache pourquoi. donc déjà si quelqu'un à une idée ça m'aiderait.

    Deuxième problème découlant du premier. Les cartes SIM se remplissent progressivement de SMS jusqu'à atteindre la capacité de stockage.
    Et là impossible de supprimer ces SMS en c#. J'ai tout essayé, le sim api manager, des librairie opennetcf et d'autres.
    Les SMS sont supprimé au premier abord mais ils réapparaissent à la première réinscription de la SIM sur le réseau (reset de l'appareil...). Please help!

    Merci d'avance.
    Cdlt,
    MvK

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2012
    Messages
    87
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 87
    Par défaut
    Bon finalement j'ai réussi en utilisant le SIM API Manager.
    Ce qui a donc réglé le deuxième problème.

    J'ai contourné le 1er problème en initialisant un timer qui vient traiter et supprimer les SMS périodiquement.

    Le code pour ceux que ça intéresserait.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
            private void timerCheckMsgSIM_Tick(object sender, EventArgs e)
            {
                int hSim = 0;
                try
                {
                    log.ecriLog(this.Name.ToString() + " : Début vérif SIM ");
                    hSim = 0;
                    int SIM_SMSSTORAGE_SIM = 2;
                    Int64 result = SimInitialize(0, 0, 0, ref hSim);
                    if (result != 0) throw new Exception("Erreur Initialisation SIM");
                    uint smsUsed = 0; //Nombre de SMS stockés sur la SIM
                    uint smsTotal = 0; //Capacité SMS sur SIM
                    result = SimGetSmsStorageStatus(hSim, Convert.ToUInt32(SIM_SMSSTORAGE_SIM), ref smsUsed, ref smsTotal);
                    int index = 1; //Index sur la SIM
                    //Pour chaque entrée possible sur la SIM, lecture du SMS, suppresion puis traitement du message.
                    for (index = 1; index <= smsTotal; index++)
                    {
                        SimMessageTag sms = new SimMessageTag();
                        result = SimReadMessage(hSim, SIM_SMSSTORAGE_SIM, index, ref sms);
                        if (result == 0)
                        {
                            result = SimDeleteMessage(hSim, SIM_SMSSTORAGE_SIM, index);
                            if (result == 0 && !String.IsNullOrEmpty(sms.lpszMessage))
                                SmsTraitement(sms.lpszMessage);
                        }
                    }
                }
                catch (Exception ex)
                {
                    log.ecriLog(this.Name.ToString() + " : Exception Check SIM " + ex.Message);
                }
                finally
                {
                    SimDeinitialize(hSim);
                }  
            }
    Bonne journée.

    Cdlt,
    MvK

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/04/2014, 09h05
  2. Pirater votre carte SIM grâce à un SMS serait possible
    Par Stéphane le calme dans le forum Sécurité
    Réponses: 3
    Dernier message: 27/07/2013, 18h34
  3. [WD15] Utilisation de la carte SIM sur PC
    Par gabcouts dans le forum WinDev
    Réponses: 7
    Dernier message: 16/09/2012, 14h30
  4. enregistrer un sms dans une carte SIM
    Par mouss4rs dans le forum Développement Mobile en Java
    Réponses: 0
    Dernier message: 07/11/2008, 18h39
  5. [C#] suppression handler sur ImageButton
    Par jld33 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 07/01/2004, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo