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

 Delphi Discussion :

'' n'est pas une valeur entière.


Sujet :

Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut '' n'est pas une valeur entière.
    Bonsoir,

    Voici le message qui arrive en cascade... donc (Ctrl+Alt+supp) pour stopper l'inflation de messageBox qui déferlent lors du lancement d'une application fonctionnant jusqu'à présent parfaitement sous tous les OS (Vista compris).
    Cette installation a été réalisée sur Seven 64...
    Elle démarre normalement avec écran splach, crée les répertoires et installe la base de données, ouvre un journal et brusquement se ramasse (le OnCreate semble avoir été parfaitement déroulé...)
    SVP Quels types de variables numériques ne faut-il pas utiliser avec cette version ?

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Aucun

    Le problème est plutôt à chercher du côté des répertoires utilisés ou de la base des registres.

  3. #3
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Salut,

    Regarde les paramètres régionaux, fixe en anglais pour commencer puis valide, remet en français. ensuite regarde les valeurs de tes séparateurs décimaux.

    A+

  4. #4
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Merci déjà pour vos observations.

    Citation Envoyé par BuzzLeclaire Voir le message
    Salut,

    Regarde les paramètres régionaux, fixe en anglais pour commencer puis valide, remet en français. ensuite regarde les valeurs de tes séparateurs décimaux.

    A+
    j'avais déjà eu ce type d'alarme avec une variable date non initialisée qui passait partout depuis 10 ans et qui s'est révélée récemment sous Vista. Il avait alors suffit de corriger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Date_Init_Avant := EncodeDate (0001,01,01);  //  2012/11/09
    hier soir j'ai constaté que dans mon fichier .log lorsque j'y écris sur ma bécane

    28/11/2012 à 21:22:29 -> Ouverture de NinaPerf...
    D:\Documents and Settings\Fabien.FD707\Bureau\Nouveau dossier (3)\
    21:23:06 -> Session terminée.


    voila ce qui est écrit sur la machine présentant le problème

    11/28/2012 à 5:32:57 PM -> Ouverture de NinaPerf...
    C:\Program Files (x86)\F@bien\NinaPerf\


    Bien entendu la dernière ligne n'apparait pas car on interrompt avant la clôture de session. Je soupçonne effectivement le format anglo-saxon de perturber l'application.
    Je viens de proposer par mail au proprio de mettre au format local... j'attends la réponse.

    Mais dans ce cas... quelqu'un sait-il comment ont peut forcer le format DateTime de la machine pour ne pas subir ce désagrément si tant est que cela en soit la cause.

    Sur ma machine, je suis passé au format anglais, j'ai effacé les fichiers d'écriture pour repartir à blanc... tout est passé sans encombre...
    Par contre qq problèmes au format US.

  5. #5
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Si le problème était le format d'une date, le message serait xx n'est pas une date valide. Ici le message est : '' n'est pas une valeur entière correct
    L'application essaie de lire un fichier qui ne se trouve pas où elle croit qu'il est dû à la redirection wow64 de ton application 32 bits sur un système 64. (par exemple un ReadInteger dans un fichier ini).

    La base des registres entraîne le même genre de problèmes. Si tu exécutes un fichier.reg, les infos seront écrites sous la structure arborescente normale alors qu'une application 32 bits sera redirigée sous SysWow64. L'application ne trouvera pas la donnée !

    Bref, les seules erreurs possibles 32 -> 64 sont : répertoires ou base des registres.

  6. #6
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    Si le problème était le format d'une date, le message serait xx n'est pas une date valide. Ici le message est : '' n'est pas une valeur entière correct
    A priori, je souscris tout à fait... néanmoins comme précisé, j'ai rencontré une fois le problème avec ce message bien précis et c'est en initialisant une date qui ne l'était pas que j'avais résolu le soucis.

    Ce que je ne comprends pas c'est qu'il force bien la création d'un répertoire où je le souhaite, qu'il écrit bien dedans, qu'il reconnait bien son chemin puisque dans le répertoire où est l'application, il installe la base de données locale...
    Les fichiers que je crée sont .log (c'est réalisé) ; .cfg (il n'a pas eu le temps) dans le répertoire de l'appli, (donc j'ai envoyé une mini appli pour voir s'il peut en créer un à cet endroit); .ini dans le répertoire du .log.

    Et bien voilà sur XP, je suis passé en mode Anglais (US)...
    j'ai récréé le problème ...
    saisie écran
    je repasse en mode Français (France) ... plus de problème.

    Question... comment forcer momentanément ce mode puis le restituer.
    ou bien
    comment en Delphi peut-on repérer que l'on n'est pas dans le mode convenu...?
    après il suffit d'envoyer un message...

  7. #7
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Donc la première constatation est que ton problème n'est pas du tout lié au 64 bits

    Les messages qui s'empilent sont dus au rafraîchissement de l'affichage (OnDrawCell, OnPaint...). Il faut chercher de ce côté !
    Sinon, pour assurer une compatibilité totale, il faut jouer avec le FormatSettings à l'écriture et la lecture du fichier. Ainsi l'affichage est toujours dans la région de l'utilisateur et cela permet d'envoyer un fichier "standardisé" dans le monde entier (des réglages par défaut par exemple).

    Mais le message est clair. Pour que "N'est pas un entier" apparaisse, c'est qu'une tentative de conversion d'une chaîne vide (ou non numérique) en entier a été demandée et là, ben... il n'y a pas de notion de conversion régionale

  8. #8
    Membre confirmé
    Homme Profil pro
    Santé
    Inscrit en
    Septembre 2010
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Santé
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2010
    Messages : 290
    Points : 534
    Points
    534
    Par défaut
    C'est probablement un problème de Separator (ThousandSeparator, DateSeparator, TimeSeparator) dans les paramètres régionaux.

  9. #9
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Le seul endroit dans un Date Time où l'on a des nombres entiers c'est dans le Time...
    Alors voilà... j'utilise optionnellement une horloge digitale 'UnitChrono' que l'on peut désactiver dans le .cfg.
    Mais par défaut elle est active.
    Dans je suis allé avec la configuration US mettre manuellement le fichier .cfg à
    [Chrono]
    Vu=0
    et là le module n'est plus appelé et ça roule... dans le module c'est la procédure du timer qui plante l'appli.

    d'où ma question : comment se présente le format time US ?

    voici l'extrait de code mis en place pour afficher l'heure :
    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
    procedure TChrono.DisplayTime(T: TTime);  //  Affichage des chiffres.
    var
      Hd, Hu, Md, Mu, Sd, Su: Byte;
      StrTime               : String[8];
    begin   // On pourrait raccourcir le code, mais c'est plus clair ainsi
      StrTime := TimeToStr(T);      // TTime => String de type '00:00:00'
      Su := StrToInt(StrTime[8]);   // String => Byte
      Sd := StrToInt(StrTime[7]);
      Mu := StrToInt(StrTime[5]);
      Md := StrToInt(StrTime[4]);
      Hu := StrToInt(StrTime[2]);
      Hd := StrToInt(StrTime[1]);
    { Charge le TPicture dont l'indice dans le tableau correspond au chiffre à afficher. }
      ImgSu.Picture := TabImg[Su];
      ImgSd.Picture := TabImg[Sd];
      ImgMu.Picture := TabImg[Mu];
      ImgMd.Picture := TabImg[Md];
      ImgHu.Picture := TabImg[Hu];
      ImgHd.Picture := TabImg[Hd];
    end;
     
    procedure TChrono.Timer1Timer(Sender: TObject);
    begin
      DisplayTime(Now);   // au-dessus...
    end;

  10. #10
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    début de piste...
    format Anglais(US) -> 2:14:38 PM

    format France et Anglais (Angleterre) -> 14:14:38

    donc la il est évident que si il cherche le caractère n°2 sur le format France, il trouve un chiffre, mais sur l'US il trouve... deux points qui n'est pas... un chiffre, d'où le message d'erreur.

    Il reste à tester la chaîne dans le Oncreat, puis de déterminer deux formats de traitements différents un et deux, qui devront donner néanmoins le même affichage.
    Dès que j'aurai un moment, j'enverrai la solution, sachant que les images sont dans la resource de l'appli.

  11. #11
    Membre confirmé
    Homme Profil pro
    Santé
    Inscrit en
    Septembre 2010
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Santé
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2010
    Messages : 290
    Points : 534
    Points
    534
    Par défaut
    ... à mon avis, ce serait plutôt StrTime[8] qui renvoie un espace, non?

  12. #12
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par Caribensila Voir le message
    ... à mon avis, ce serait plutôt StrTime[8] qui renvoie un espace, non?
    Avec le StrTime : String[8]; les huits premiers caractères peuvent effectivement terminer par un chiffre ou... un blanc et comme ici c'est le 8ème qui est lu en premier, et bien après 10h jusqu'à 12h pas de pb mais en dehors de cette marge plantage

    Tout dépend donc du moment de la journée.. à 10h15 ce matin ça plantait pas mais cet aprèm ... oui,

    Après le décalage subsiste de toute façon.

  13. #13
    Membre confirmé
    Homme Profil pro
    Santé
    Inscrit en
    Septembre 2010
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Santé
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2010
    Messages : 290
    Points : 534
    Points
    534
    Par défaut
    Citation Envoyé par F@bien.fd Voir le message
    [..] à 10h15 ce matin ça plantait pas mais cet aprèm ... oui,
    Oui, mais j'ai posté à 2:27 PM.

    Citation Envoyé par F@bien.fd Voir le message
    Après le décalage subsiste de toute façon.
    Entièrement d'accord.

  14. #14
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 586
    Points : 25 262
    Points
    25 262
    Par défaut
    Sinon, FormatDateTime permet d'éviter ce genre de problème

    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
    procedure TChrono.DisplayTime(T: TTime);  //  Affichage des chiffres.
    var
      Hd, Hu, Md, Mu, Sd, Su: Byte;
      StrTime               : String[6];
    begin   // On pourrait raccourcir le code, mais c'est plus clair ainsi
      StrTime := FormatDateTime('SSNNHH', T);      
      Sd := StrToInt(StrTime[1]);   // String => Byte
      Su := StrToInt(StrTime[2]);
      Md := StrToInt(StrTime[3]);
      Mu := StrToInt(StrTime[4]);
      Hd := StrToInt(StrTime[5]);
      Hu := StrToInt(StrTime[6]);
    { Charge le TPicture dont l'indice dans le tableau correspond au chiffre à afficher. }
      ImgSu.Picture := TabImg[Su];
      ImgSd.Picture := TabImg[Sd];
      ImgMu.Picture := TabImg[Mu];
      ImgMd.Picture := TabImg[Md];
      ImgHu.Picture := TabImg[Hu];
      ImgHd.Picture := TabImg[Hd];
    end;
    Une Variante DecodeTime, pour moi la solution la plus performante

    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
    procedure TChrono.DisplayTime(T: TTime);  //  Affichage des chiffres.
    var
      var Hour, Min, Sec, MSec: Word;
      Hd, Hu, Md, Mu, Sd, Su: Byte;
    begin   // On pourrait raccourcir le code, mais c'est plus clair ainsi
      DecodeTime(T, Hour, Min, Sec, MSec);
     
      Sd := Sec div 10;   
      Su := Sec mod 10;
      Md := Min div 10;
      Mu := Min mod 10;
      Hd := Hour div 10;
      Hu := Hour mod 10;
    { Charge le TPicture dont l'indice dans le tableau correspond au chiffre à afficher. }
      ImgSu.Picture := TabImg[Su];
      ImgSd.Picture := TabImg[Sd];
      ImgMu.Picture := TabImg[Mu];
      ImgMd.Picture := TabImg[Md];
      ImgHu.Picture := TabImg[Hu];
      ImgHd.Picture := TabImg[Hd];
    end;
    la version DivMod, moins lisible mais encore plus performante !

    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
    procedure TChrono.DisplayTime(T: TTime);  //  Affichage des chiffres.
    var
      var Hour, Min, Sec, MSec: Word;
      Hd, Hu, Md, Mu, Sd, Su: Word;
    begin   // On pourrait raccourcir le code, mais c'est plus clair ainsi
      DecodeTime(T, Hour, Min, Sec, MSec);
      DivMod(Sec , 10, Sd, Su);
      DivMod(Min, 10, Md, Mu);
      DivMod(Hour, 10, Hd, Hu);
    { Charge le TPicture dont l'indice dans le tableau correspond au chiffre à afficher. }
      ImgSu.Picture := TabImg[Su];
      ImgSd.Picture := TabImg[Sd];
      ImgMu.Picture := TabImg[Mu];
      ImgMd.Picture := TabImg[Md];
      ImgHu.Picture := TabImg[Hu];
      ImgHd.Picture := TabImg[Hd];
    end;

  15. #15
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Dans le même esprit que Shai, afin de rester indépendant des paramètres régionaux:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      DecodeTime(T, h, m, s, ms);
      ImgHd.Picture := h div 10;
      ImgHu.Picture := h mod 10;
      ImgMd.Picture := m div 10;
      ImgMu.Picture := m mod 10;
      ImgSd.Picture := s div 10;
      ImgSu.Picture := s mod 10;
    Ecrit à la volée sans test.

    @+

  16. #16
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 586
    Points : 25 262
    Points
    25 262
    Par défaut

    Pendant que j'éditais ma réponse, Cl@udius a semble-t-il eu la même idée !

  17. #17
    Membre confirmé
    Homme Profil pro
    Santé
    Inscrit en
    Septembre 2010
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Santé
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2010
    Messages : 290
    Points : 534
    Points
    534
    Par défaut
    Il faut se méfier de Shaï !
    Il a l'habitude d'éditer plusieurs fois durant de longues minutes...

    Un train peut en cacher un autre !

  18. #18
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 586
    Points : 25 262
    Points
    25 262
    Par défaut
    Citation Envoyé par Caribensila Voir le message
    Il a l'habitude d'éditer plusieurs fois durant de longues minutes...
    Oh tu pouvais même oser une petite heure tu l'as pensé si fort


  19. #19
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Le pire c'est que si j'ai trouvé le nœud du problème et que je m'était donné un peu d'air... pour une fois je n'ai pas à trouver la solution, j'ai rien eu besoin de creuser, vous ne m'avez pas laissé le temps puisque vous l'avez fait pour moi...

    Mille mercisss

  20. #20
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2004
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 264
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message

    la version DivMod, moins lisible mais encore plus performante !
    Ben c'est celle que je vais utiliser...

    Pour ceux que l'appli intéressera, elle n'est plus terminée, car on me demande d'autres développements... dès que j'ai terminé la mise au point actuelle, je mets le lien.

    Elle concerne la gestion des historiques de performance d'un portif boursier. Evidemment il faut constituer la base de données.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/11/2011, 17h28
  2. '' n'est pas une valeur en virgule flottante correcte
    Par laala.hamid dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/08/2011, 11h06
  3. "Si" ce n'est pas une valeur
    Par Martinfootplus dans le forum Excel
    Réponses: 2
    Dernier message: 06/08/2007, 00h50
  4. radiobutton erreur n'est pas une valeur entière correcte
    Par pierrot67 dans le forum Bases de données
    Réponses: 3
    Dernier message: 12/03/2006, 21h27
  5. erreur '' n'est pas une valeur entière correcte
    Par ffxlenoir dans le forum Langage
    Réponses: 5
    Dernier message: 02/12/2005, 13h57

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