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

Free Pascal Discussion :

Imprimer du texte


Sujet :

Free Pascal

  1. #1
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut Imprimer du texte
    Je cherche maintenant à imprimer directement à partir de mon programme une liste de coup pour faciliter mes vérifications de coups valides, mais j'ai cru comprendre qu'on ne pouvait pas imprimer sur une imprimante USB en Pascal, les instructions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    USE crt;
     
    Writeln(lst, 'Imprime moi...');

    ne marche pas, y a t-il une autre solution à part celle de créer un fichier texte et de l'imprimer dans le bloc note ?

    Merci

  2. #2
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Bonjour,

    Citation Envoyé par glegat Voir le message
    j'ai cru comprendre qu'on ne pouvait pas imprimer sur une imprimante USB en Pascal
    Imprimante USB ou non, cela ne change rien à l'affaire.

    Voici par exemple comment imprimer depuis Lazarus :

    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
     
    procedure TMainForm.FilePrintExecute(Sender: TObject);
    // *** impression ***
    var
      LPrinter: TPrinter;
      Li, Lline: Integer;
      LV: Integer;
    begin
      LPrinter := Printer;
      LPrinter.Title := EditorForm.Caption; // titre de la fiche (ici EditorForm) comme titre du document - facultatif
      try
        LPrinter.BeginDoc; // on imprime...
        LPrinter.Canvas.Font.Name := 'Arial'; // impression dans le canevas
        LPrinter.Canvas.Font.Size := 12;
        LPrinter.Canvas.Font.Color := clBlack;
        LV := 4 * Round(1.2 * Abs(LPrinter.Canvas.TextHeight('I'))); // taille verticale d'une lettre "haute"
        LLine := 0; // compteur de ligne en cours
        for Li := 0 to (EditorForm.SynEditEditor.Lines.Count - 1) do // lignes à imprimer extraites d'un composant SynEdit (par exemple)
        begin
          Inc(LLine);
          LPrinter.Canvas.TextOut(100 , LV + 120 * (LLine - 1),  // écriture à 100 pixels du bord et en tenant compte de la hauteur du texte
            EditorForm.SynEditEditor.Lines[Li]);
          if (Li mod 50) = 0 then // saut de page toutes les cinquante lignes
          begin
            LPrinter.NewPage; // saut de page
            LLine := 0;
          end;
        end;
      finally
        LPrinter.EndDoc; // fin d'impression
      end;
    end;
    La classe TPrinter figure dans l'unité Printers.
    Mais je ne sais pas ce que vous utilisez comme Pascal...

    Gilles
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  3. #3
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut Unité Printers
    La classe TPrinter figure dans l'unité Printers.
    Mais je ne sais pas ce que vous utilisez comme Pascal...
    Merci pour votre code. Je me suis empressé de l'essayer, mais j'utilise Free Pascal (compilateur version 2.6.4) et l'unité printers que vous utilisez dans votre code n'est pas présente dans free Pascal. Y a t-il une autre solution ?

    Gérard

  4. #4
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Citation Envoyé par glegat Voir le message
    Merci pour votre code. Je me suis empressé de l'essayer, mais j'utilise Free Pascal (compilateur version 2.6.4) et l'unité printers que vous utilisez dans votre code n'est pas présente dans free Pascal. Y a t-il une autre solution ?

    Gérard
    Dans ce cas, il faut utiliser l'unité printer de Free Pascal qui fournit les fonctionnalités de base d'une impression (texte uniquement) :

    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
     
    program testprn;
     
    uses printer; // existe pour Free Pascal
     
    var i : integer;
        f : text;
     
    begin
      writeln ('Test de l''unité PRINTER');
      writeln ('On imprime...');
     
    // impression "classique"
      for i:=1 to 80 do writeln (lst,'Voici la ligne : ',i,'.'#13);
      close (lst);
      writeln ('Impression terminée.');
     
      {$ifdef Unix}
      writeln ('Impression dans un "pipe"...');
      assignlst (f,'|/usr/bin/lpr -m');
      rewrite (f);
      for i:=1 to 80 do writeln (f,'Voici la ligne : ',i,'.'#13);
      close (f);
      writeln ('Impression terminée.')
      {$endif}
    end.
    C'est rustique, mais ça devrait fonctionner...
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  5. #5
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut
    Encore merci, effectivement l'unite printer existe dans Free Pascal, la compilation est acceptée, mais à l'exécution j'obtiens un runtime error 103 et rien ne s'imprime.

    Je ne suis pas un spécialiste (je me remets depuis quelques jours à la programmation après une interruption de plusieurs années) mais je croyais que Free Pascal était encore utilisé aujourd'hui par des développeurs, il doit bien y avoir un moyen de lancer une impression !

    Je vais continuer mes recherches, merci de votre aide.

    Gérard.

  6. #6
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Bonsoir ! J'ai trouvé ce code. Je ne peux pas le tester, parce que je n'ai pas d'imprimante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    uses
      ShellAPI, Windows;
     
    begin
      ShellExecute(0, 'print', 'C:\MonDossier\MonDocument.odt', nil, nil, SW_HIDE) ;
    end.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  7. #7
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Citation Envoyé par glegat Voir le message
    je croyais que Free Pascal était encore utilisé aujourd'hui par des développeurs
    Bien sûr ! Lazarus n'est qu'une surcouche de Free Pascal... Par conséquent, Lazarus utilise le compilateur Free Pascal. Il présente simplement l'avantage d'offrir une synthèse des éléments que le programmeur Free Pascal devra rassembler lui-même (d'où la difficulté à réaliser des tâches aussi simples qu'imprimer un texte). En contrepartie, il impose (en partie) un cadre assez contraignant avec le concepteur de fiches du style Delphi.

    Sinon, l'erreur 103 indique que le fichier n'est pas ouvert. Soit il s'agit du fichier lu pour être imprimé, soit on tente d'écrire sur l'imprimante sans que le "fichier" d'impression ne soit ouvert... Je vais essayer pour voir...

    Bon courage !
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  8. #8
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut
    Merci gvasseur58 et merci Roland Chastaing, je suis épaté d'avoir des réponses si rapides sur ce forum par des programmeurs aguerris en faveur d'un débutant ancien programmeur amateur.

    Mais malheureusement toutes ces solutions ne marchent pas, celui ci-dessous très séduisant pas sa concision ne fait qu'afficher brièvement la console avec rien dedans, pourtant par une erreur n'est signalée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    uses
      ShellAPI, Windows;
     
    begin
      ShellExecute(0, 'print', 'C:\MonDossier\MonDocument.odt', nil, nil, SW_HIDE) ;
    end.
    Il me vient l'idée d'ouvrir un concours fort bien doté pour quiconque réussira à écrire en free pascal une procédure équivalente à l'instruction basic LPRINT"bonjour" que l'on utilisait sur l'Oric en 1982 (16 ko de mémoire Ram et 32 ko de Rom si je ne me trompe) !!!

    C'est un bon sujet je trouve:

  9. #9
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par glegat Voir le message
    Mais malheureusement toutes ces solutions ne marchent pas, celui ci-dessous très séduisant pas sa concision ne fait qu'afficher brièvement la console avec rien dedans, pourtant pas une erreur n'est signalée.
    Je vous propose une version avec message d'erreur, en espérant que cela puisse vous aider.

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    program ShellExecute1;
     
    {$APPTYPE CONSOLE}
    {$MODE DELPHI}
     
    uses
      ShellAPI, Windows;
     
    function ShellExecuteErrorMessage(const err: integer): string;
    begin
      case err of
        0:
          result := 'The operating system is out of memory or resources.';
        ERROR_FILE_NOT_FOUND:
          result := 'The specified file was not found.';
        ERROR_PATH_NOT_FOUND:
          result := 'The specified path was not found.';
        ERROR_BAD_FORMAT:
          result := 'The .exe file is invalid (non-Win32 .exe or error in .exe image).';
        SE_ERR_ACCESSDENIED:
          result := 'The operating system denied access to the specified file.';
        SE_ERR_ASSOCINCOMPLETE:
          result := 'The file name association is incomplete or invalid.';
        SE_ERR_DDEBUSY:
          result := 'The DDE transaction could not be completed because other DDE transactions were being processed.';
        SE_ERR_DDEFAIL:
          result := 'The DDE transaction failed.';
        SE_ERR_DDETIMEOUT:
          result := 'The DDE transaction could not be completed because the request timed out.';
        SE_ERR_DLLNOTFOUND:
          result := 'The specified DLL was not found.';
       {SE_ERR_FNF:
          result := 'The specified file was not found.';}
        SE_ERR_NOASSOC:
          result := 'There is no application associated with the given file name extension. This error will also be returned if you attempt to print a file that is not printable.';
        SE_ERR_OOM:
          result := 'There was not enough memory to complete the operation.';
       {SE_ERR_PNF:
          result := 'The specified path was not found.';}
        SE_ERR_SHARE:
          result := 'A sharing violation occurred.';
      else
        Str(err, result);
      end;
    end;
     
    var
      i: integer;
     
    begin
      i := ShellExecute(0, 'print', 'C:\document.odt', nil, nil, SW_HIDE) ;
      WriteLn(ShellExecuteErrorMessage(i));
      Write('Appuyez sur la touche Entrée... ');
      ReadLn;
    end.

    Citation Envoyé par glegat Voir le message
    Il me vient l'idée d'ouvrir un concours fort bien doté pour quiconque réussira à écrire en free pascal une procédure équivalente à l'instruction basic LPRINT"bonjour" que l'on utilisait sur l'Oric en 1982 (16 ko de mémoire Ram et 32 ko de Rom si je ne me trompe) !!!
    Bonne idée !
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  10. #10
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut
    Je vous propose une version avec message d'erreur, en espérant que cela puisse vous aider.
    Vous avez gagné le concours !

    En fait votre premier programme marchait déjà mais je m'étais trompé dans l'emplacement du fichier, du coup votre deuxième programme m'a permis de m'apperçevoir du problème, c'est top.

    Donc maintenant on sait imprimer un document extérieur au programme, est-il possible d'adapter cette routine pour imprimer directement des données venant du programme car dans la première solution pour imprimer mes variables de tests je dois d'abord créer un fichier texte et le sauvegarder sur le disque, alors que si on a une solution directe c'est plus simple.

    Mais franchement ne cherchez pas (même si apparemment vos solutions viennent rapidement et que vous codez à la vitesse de l'éclair) je ne veux pas abuser de votre temps.

    Sachez toutefois qu'avec vos programmes d'échecs et votre sujet sur la programmation des échecs vous m'avez redonné la motivation pour essayé d'écrire un programme d'échecs et qu'aujourd'hui je ne suis pas mécontent de l'avancement car mon générateur de coups est terminé et mes premiers test me confirment que tout est ok. Il n'y a que la prise en passant que je n'ai pas traitée. je verrais cela un peu plus tard car je suis pressé de commencer une procédure d'évaluation j'ai quelques idées la dessus dont je vous parlerais sans doute (j'ai joué pendant des années dans un cercle et fait un peu de compétition). Je suis sur que mon code n'est pas optimisé car en fait j'apprends le pascal en programmant un jeu d'échecs, c'est un peu prématuré je pense, mais bon en même temps personne n'attend de moi un résultat quelconque.Vos programmes me donnent des idées mais en fait je suis obligé de tout réécrire car dans le détail je ne comprends quasiment rien.

    Mon objectif dans un premier temps est de faire un programme avec une profondeur d'analyse sur deux demi-coups seulement et de le rendre le plus intelligent possible à ce niveau en testant certains heuristiques que j'ai imaginé, ensuite en fonction du résultat je poursuivrais.

    Gérard

  11. #11
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Content que la programme fonctionne. Pour imprimer directement, non, je ne sais pas le faire. Pour cela je pense qu'il faudrait explorer la solution proposée par gvasseur58.

    Une suggestion à propos de votre projet d'un programme d'échecs : vous pourriez, si vous le souhaitez, ouvrir une discussion dans laquelle vous présenteriez vos avancées et poseriez vos questions. Bonne continuation !
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  12. #12
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut
    Une suggestion à propos de votre projet d'un programme d'échecs : vous pourriez, si vous le souhaitez, ouvrir une discussion dans laquelle vous présenteriez vos avancées et poseriez vos questions. Bonne continuation !

    Ok Excellente idée, je vais faire ça.

    Merci,

    Gérard

  13. #13
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Citation Envoyé par glegat Voir le message
    est-il possible d'adapter cette routine pour imprimer directement des données venant du programme car dans la première solution pour imprimer mes variables de tests je dois d'abord créer un fichier texte et le sauvegarder sur le disque, alors que si on a une solution directe c'est plus simple.
    Si le but est simplement de visualiser l'état de variables, il y a d'autres manières plus simples de le faire qu'un flux vers une imprimante : une boîte à messages, une fenêtre séparée, etc., ou encore utiliser le débogueur.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  14. #14
    Membre régulier
    Avatar de glegat
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Avril 2015
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Avril 2015
    Messages : 61
    Points : 107
    Points
    107
    Par défaut
    Si le but est simplement de visualiser l'état de variables, il y a d'autres manières plus simples de le faire qu'un flux vers une imprimante : une boîte à messages, une fenêtre séparée, etc., ou encore utiliser le débogueur.
    Ce n'est pas pour seulement pour surveiller des variables pendant le déroulement du programme, mais tout simplement pour garder une trace papier des différentes listes que je pourrais être amené à générer pour tester et vérifier le bon fonctionnement de mon programme. Un programme d'échecs peut délivrer des tonnes d'informations (liste de coups, valeur de la fonction d'évaluation pour chaque coup, profondeur d'analyse, variantes etc...) et surveiller cela uniquement à l'écran n'est pas l'idéal, une trace papier permet de consulter et de travailler sur les données ailleurs que devant l'écran.


    Mais déjà la solution d'imprimer le contenu d'un fichier proposé par Rolland Chastaing est une très bonne chose.

Discussions similaires

  1. [Batch] Imprimer un texte
    Par Invité dans le forum Windows
    Réponses: 5
    Dernier message: 01/09/2006, 15h17
  2. [VB.Net] Imprimer un texte
    Par DonF dans le forum Windows Forms
    Réponses: 2
    Dernier message: 27/01/2006, 18h55
  3. [Print]Comment imprimer le texte d'une Jframe???
    Par greg3105 dans le forum Général Java
    Réponses: 4
    Dernier message: 03/04/2005, 19h47
  4. VB6] imprimer le texte afficher dans une picturebox
    Par Persons dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/08/2004, 11h15
  5. Imprimer fichier texte
    Par Freeze dans le forum C++Builder
    Réponses: 3
    Dernier message: 05/11/2003, 11h37

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