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

Flex Discussion :

Effacer tous les SharedObject


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 29
    Par défaut Effacer tous les SharedObject
    Bonjour, j'utilise des SharedObject pour sauvegarder les préférences des utilisateurs pour l'ordre des colonnes des datagrid de l'application. Pour cela, je sauvegarde un SharedObject :

    var so:SharedObject=SharedObject.getLocal(nom);

    La variable nom contient différentes clés pour que cela donne bien un SharedObject par datagrid.

    J'aimerais faire une fonction qui efface tous les SharedObject. Or, il faudrait qu'elle soit générique car je ne peux pas tester tous les noms possibles de datagrid. Y'a t il un moyen d'obtenir tous les noms de SharedObject qui ont été stockés ?

    Merci pour votre aide, je n'arrive pas à trouver.

  2. #2
    Membre Expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Par défaut
    Salut,

    Je ne sais pas si c'est possible ou non, mais j'aurais tendance à dire que d'un point sécurité ce n'est pas possible.
    Imagine qu'une appli flex efface toutes les SO d'une autre appli ... ca devient limite ...

    Après c'est peut être faisable mais j'en doute.

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 29
    Par défaut
    D'après ce que j'ai vu, sous vista, ces OS se créent dans C:\Users\NOMUTILISATEUR\AppData\Roaming\NOMAPPLI\Local Store\#SharedObjects\NOM.swf

    donc à partir de telle appli, tu n'auras acces qu'aux SO de l'appli.

    J'ai donc trouvé comment faire, je partage donc ici :
    la fonction peut surement être un peu optimisée, mais cela a le mérite de fonctionner.
    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
     
     
                private function EffacePref():void
                {
                    var dossier:File=File.applicationStorageDirectory.resolvePath("#SharedObjects\\votrenom.swf");
                    if (dossier.exists)
                    {
                        for each (var f:File in dossier.getDirectoryListing())
                        {
                            if ((f.name.length > 4) && (f.extension == "sol"))
                            {
                                var st:String=f.name.substr(0, f.name.length - 4);
                                var sharedObject:SharedObject=SharedObject.getLocal(st);
                                sharedObject.clear();
     
                            }
     
                        }
                    }
                }

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    793
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2009
    Messages : 793
    Par défaut
    Tout cela me semble un peu "bricolé" et alléatoire. de plus ça ne fonctionne qu'avec AIR.

    A mon humble avis il y a d'autres solutions :
    1- Gérer un second SharedObject qui contient la liste des SharedObjects à supprimer.
    2- Gérer un SharedObject lui même constitué de l'ensemble des objects élémentaires.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    319
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 319
    Par défaut
    +1 ça me semble le plus portable et le plus sûr

Discussions similaires

  1. Effacer tous les contrôles d'un formulaire
    Par guen dans le forum Access
    Réponses: 4
    Dernier message: 08/09/2006, 22h19
  2. Connexion refusée par MySQL : j'ai effacé tous les utilisateurs
    Par AliochaBada dans le forum Installation
    Réponses: 2
    Dernier message: 16/08/2006, 01h44
  3. Réponses: 2
    Dernier message: 15/08/2006, 16h43
  4. Effacer tous les enregistrements d'une table
    Par plutonium719 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 08/08/2006, 15h05
  5. [ORA-00157] J'ai effacé tous les fichiers de données
    Par sniperseb dans le forum Oracle
    Réponses: 14
    Dernier message: 02/02/2006, 11h15

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