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

Macros et VBA Excel Discussion :

explication sur l'object scriptcontrol


Sujet :

Macros et VBA Excel

  1. #1
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut explication sur l'object scriptcontrol
    bonjour a tous

    dans un autre post Durupt a proposé ceci:


    j'aimerait comprendre a partir le la ligne 13

    j'ai l'impression que Durupt utilise le scriptcontrol comme moi j'utilise l'Object "htmlfile"

    cela dis je ne suis pas sur de comprendre a partir de la ligne 13

    voila durupt j'ai ouvert un autre post pour ne pas pollué l'autre post si tu passe par la
    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
    Sub test()
    Dim a As Integer
    Dim code As String
    code = "Sub Test()" & vbCrLf
    code = code & "dim a,i" & vbCrLf
    code = code & "for i = 1 to 10" & vbCrLf
    code = code & "a = a + 10" & vbCrLf
    code = code & "next " & vbCrLf
    code = code & "msgbox a" & vbCrLf
    code = code & "End Sub" & vbCrLf
    Set scr = CreateObject("ScriptControl")
    scr.Language = "VbScript"
    scr.AddObject "This", ThisWorkbook, True
    Set m = scr.Modules.Add("Module1")
    m.AddCode code
    m.Run "test"
    Set m= nothing
    Set scr = nothing
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 652
    Points : 1 219
    Points
    1 219
    Par défaut
    Bonjour,

    Tu peux déjà monter la référence à msscript.ocx pour voir les Objects dans l'Explorateur d'objets.

    Chez moi j'ai :
    Library MSScriptControl
    C:\WINDOWS\system32\msscript.ocx
    Microsoft Script Control 1.0

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    bonjour PMO2017

    heu.......
    Tu peux déjà monter la référence à msscript.ocx pour voir les Objects dans l'Explorateur d'objets.
    moi je monte a cheval et a l'échelle et toi?

    cela dit ce n'est pas ce qui m'intéresse déjà parce que je ne fait que du late binding (transportabilité)alors ce qui peut ce passer dans la référence ......

    moi c'est les lignes 13 et plus que je ne suis pas sur de comprendre :après l'Object presque m'importe peu

    cela dit quelle référence faut il activer pour l'avoir je ne le trouve pas chez moi
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour tout le monde et bonjour Patrick,
    L'objet ScriptControl permet certe d'exécuter un script vbscript ou javascript c'est selon, mais il permet un réactivité entre le script et le programme appelant.
    "This" représente un nom virtuel qui sera utilisé dans le script, ThisWorkbook L'objet physique passé en paramètre.
    Code vbscript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    This.workSeets("feuil1")
    This.application.vba.dir("c:\*.*")

    J'ai mis "This" mais je pouvais mettre "DuChnoque"

    Jusqu'ici nous avons créé une enveloppe comme qu'en on ouvre une session Excel,on p. Voir Excel mais il est vide et il faut lui ajouter des workbooks

    Set m = scr.Modules.Add("Module1") ajoute un module vierge.

    Ensuite on change le code dans le module et on l'exécute.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    m.AddCode code
    m.Run "test"
    Note qu'il est possible de créer de fonctions et que le run te retourne la valeur
    v = m.run("myfoncton")Note également que les Sub et les fonctions ne sont pas obligatoire tu peux placer ton code directement sens Sub et end Sub et dans ce cas m.run suffit!

    Dans une application visual studio 6, j"utilisais un web office qui présentait des données a saisir, certaines personnes en charge de contrôler certaines données voulaient masquer certains colonnes et d'autres d'autre colonnes.

    J'ai mis au point un générateur de macros et j'ai utiliser cet algorithme pour l'exécution
    Dernière modification par Invité ; 01/07/2015 à 21h39.

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonsoir Durupt

    OK donc je reprends
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    'on créé l'object script 
    Set scr = CreateObject("ScriptControl")
    'on lui atrubue le language VBS
    scr.Language = "VbScript"
    'on lui atrubu le parmatre  thiworkbook (le classeur actuel)
    scr.AddObject "This", ThisWorkbook, True
    'on ajoute un module dans le workbook
    Set m = scr.Modules.Add("Module1")
    'on place le code dans le module du workbook en parametre 
    m.AddCode code
    ' on execute la sub test du module 1 précédement créé
    m.Run "test"
    c'est cette ligne qui me rend perplexe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set m = scr.Modules.Add("Module1")
    j'aurais plutôt tendance a penser que l'on ajoute un module dans SRC

    mais déjà tu a répondu a une question qui me tarabustait depuis 2 jours

    a savoir créé l'object ,placer un code sans sub ou fonction, et l'exécuter

    ca reviendrais a la me chose que créé un fichier VBS avec du code dedans et lancer le vbs externe sauf que la c'est interne
    tout du moins en mémoire de la même manière que mon Object "htmlfile"

    on est d'accords ??,

    cet object m'intéresse pour reprendre la contrib de MarcL sur le sujet "accélérer une requête multi page web qui utilise en l'etat un fichier physique VBS

    j'avais fait une tentative mais échoué ne connaissant pas bien cet object
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour Patrick,
    j'aurais plutôt tendance a penser que l'on ajoute un module dans SRC
    Oui comme set wb =workbooks.add ajoute un classeur à. Workbooks mais ne nous interdit pas d'utiliser wb


    En soit utiliser ScriptControl dans un projet vba, relève d'un exercice de style et présente peut d'intérêt ! C'est pas tous les jours qu'on implémente du code à la volé dans une macro.
    ca reviendrais a la me chose que créé un fichier VBS avec du code dedans et lancer le vbs externe sauf que la c'est interne
    On utilise ce type d'algorithmes pour des projets vbs volumineux, on exécute un ficher vbs qui ouvre un autre fichier vbs qui le run pour le charger en mémoires.

    Sur une autre conversation il était question une sorte includ, c'est exactement ça.
    On peut charger plusieurs modules et ce contenter de faire un run sens appeler un méthode pour activer le procès d'exécution ainsi toutes les méthodes sont accessibles d'un autre module.

    J'ai fourni à vba une technique utiliser en vbs.

    On utilise ce procédé pour inclure plusieurs fichiers vbs dans l'exécution d'un seule (#includ)!

    Tu attends des réponses à tes questionnement et c'est bien légitime, mais tu veux tellement que ça match que tu perds de vue les fondamentaux!

    Je pense que cet objet vas répondre favorablement à ta problématique! Seulement tes bourdes te feront progresser sur le sujet!

    Et même passer ton "htmlfile" en paramètre et le gérer dans "scriptcontrol" (faire un mixe des deux!)
    Dernière modification par Invité ; 02/07/2015 à 13h00.

  7. #7
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonsoir Durupt

    ca commence mal sur un test simple

    j'essaie ceci et il semblerait que les vbs s'exécutent directement ou alors j'ai rien compris
    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
    Dim LScript(20) As Object
    Sub test()
        Dim i As Long
        For i = 1 To 20
            creation_vbs_Virtuel i
        Next
        'reste du code vba
        '.........
        'on les lancera plus tard
        'for i= 1 to 20
        ''LScript(i).Run
        'Set LScript(i) = Nothing
        'next
    End Sub
    Sub creation_vbs_Virtuel(i)
        Set LScript(i) = CreateObject("ScriptControl")
        LScript(i).Language = "VbScript"
        code = "msgbox ""coucou """    'c'est l'execution du script "" & i & """
        LScript(i).addcode code
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonsoir Patrick,
    Je te dois des excuses, j'ai regardé mes vieux fichier vbs dans lesquels j'utilisais cette méthode et en effet le fichier principal charge les autres fichier qui sont constitués de méthodes puis appel hors d'un sub la méthode principale!

  9. #9
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re

    Oui j'avais compris cela même manière que mes vieux fichier vbs s'exécute des leur appel puisque le code n'est pas dans une sub

    de toute façon je suis déçu car même dans une sub je n'obtiens pas le résultat escompté

    en effet l'object lui même appartenant a l'application l'exécution simultanée n'est pas possible de part le msgbox qui bloque l 'application forcement tant que l'on a pas cliquer oui/non


    ensuite j'ai fouillé mes archives et je crois que j'ai une autre piste

    toujours dans l'optique d'exécuter des vbs en simultané (voir la discutions de marc a ce sujet)mais sans fichier vbs
    voici ce que j'ai retrouvé

    j'ai un message d'erreur mais on vois bien que le vbs suivant le n'attend pas que le précèdent ai fini puisque j'ai les 5 messages
    a l'inverse des sub vba malgré tout les doevents qu'on voudra

    une idée pour intégré un code vbs dans cette structure?????
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test2()
    For i = 1 To 5
    machin i
    Next
     
    End Sub
    Private Function machin(i)
     '
     
     CreateObject("WScript.Shell").Run _
    "mshta.exe vbscript:close( CreateObject(""WScript.Shell"")" _
    & "<Script>" & vbCrLf & " msgbox ""coucou""" & i & vbCrLf & "</Script>)"
    End Function
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  10. #10
    Invité
    Invité(e)
    Par défaut
    bonjour Patrick,
    nous somme en train de rejouer le drame du lièvre, obligé d'attendre qu la tortue franchisse la ligne d'arrivé avant de partir!

    vba n'accepte pas le multithread! je pense avoir vue qu'il existait le même genre d'objet qui lui travail en C Sharp , si on peut le piloter en multithread, alors je te proposerais une classe vba qui utilise ScriptControl mais qui le addcode en C#!

    sens garantie.

  11. #11
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    Bonjour Durupt

    oui c'est exactement ca vba ne gere pas le multithread mais bon avec un fichier physique ".vbs" on y arrive c'est le prince que MarcL utilise pour accélérer des requêtes sur multiple page web

    j'avais essayer de le faire avec un module classe instancié X fois mais c'est encore trop lent

    l'exemple que j'ai posté en dernier prouve bien en instanciant un object externe on peu .Reste a savoir si dans cette structure de code on peut placer le code vbs

    je suis impatient de voir cette classe : en C# en plus ,ca promet des migraines pour moi
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  12. #12
    Invité
    Invité(e)
    Par défaut
    bonjour Patrick,
    pour l'instant, c'est moi qui me pays des migraines , si je réussi, je te mettrai en pièce jointe le reste du tube d'aspirines!

    en effet, la librairie Microsoft Vsa, permet d'exécuter de C#, mais me dit variable de bloc non défini!

    sur internet il est dit qu'il faut modifier le fichier de config XML d'excel mais bricoler Excel n'est pas dans ma vision, on vas pas bricoler cher les clients a chaque utilisation de l'application. je suis sur la même longueur d'onde que toi late binding et encore du late binding et toujours du late binding, alors la bricole!!!!

    l'idée étant de faire un classe MyScriptControl avec de propriétés et méthode identique à ScriptControl, je garde en interne un objet privée ScriptControl et on exécute les ScriptContro.lAddCode code dans une envelope C# multithread!

    sur le papier c'est fumant car à ton niveau rien ne change (même Code), mais en live je rame!

    je continue mes recherches, si tu trouves des lien tu me le communique.
    Images attachées Images attachées  

  13. #13
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour Durupt

    peut être faudrait il activer la référence Microsoft vsa

    chez moi cette déclaration ne bug pas
    Nom : Capture.PNG
Affichages : 3365
Taille : 26,4 Ko

    et il semblerait qu'il prenne en charge le ".net" ,.netframework"

    sa élargie l'horizon et il me semble que la c'est ton domaine le .net
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #14
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    Bonjour Durupt

    peut être faudrait il activer la référence Microsoft vsa

    chez moi cette déclaration ne bug pas
    Nom : Capture.PNG
Affichages : 3365
Taille : 26,4 Ko

    et il semblerait qu'il prenne en charge le ".net" ,.netframework"

    sa élargie l'horizon et il me semble que la c'est ton domaine le .net
    Oui bien sur je l'ai fait si non Dim vS As New VsaLoader serait en rouge fais F8 passes le curseur sur vS!

    ceci dit il faut que je regarde quel netframework , si je dispose du 4.5 et qu'il utilise le 3.0, Il faut que je l’installe alors!

    c'est comme chez le psy le fait d'en parler... dégage les objet du sofa je risque d'en avoir besoin!
    Dernière modification par Invité ; 04/07/2015 à 12h54.

  15. #15
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re

    jen pense que comme c'est une librairie de MSFT elle est mise a jour par les KB je crois

    et puis au quel cas tu dois l'avoir puisque a partir de vista d'origine on tourne avec 3.5


    mise a jour 4.1 puis 4.5


    et quand on regarde dans le dossier Framework on a toujours les librairies de toutes les versions

    moi je tourne avec W7 et c'est comme ca chez moi
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  16. #16
    Invité
    Invité(e)
    Par défaut
    Oui j'ai vérifié, je les ai tous. Vue en plus j'avais vb2010 j'ai 1.0; 1.1; 2.0; 3.0; 3.5 et la 4.0

    Seule la 2.0 et la 4.0 possède Vsa.

    J'ai développé une dll compatible avec vba elle porte l'extension tlb et j'ai le même problème!

  17. #17
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    peut etre qu'en effet chez certaine configuration la mise a jour déreg (regedit)la précédente donc plus enregistrée

    un simple réenregistrement de la bonne version en la metant dans un autre dossier pourrais te restituer sa fonctionnalité dans les références
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  18. #18
    Invité
    Invité(e)
    Par défaut
    J'ai changé une version se framework via parcourir de les références!

    Mais je vais trouver!

  19. #19
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    dans le moteur de recherche de regedit
    tu tape Framework
    tu tape control & F pour le suivant etc ...(x fois)
    quand tu tombe sur des clisd tu les ouvre et si tu a une sous clé "sourcelist" cette version est utilisée

    en général c'est la dernière installée et la précédente j'ai tester sur mes 3 ordis

    les autre tu les trouves ailleurs mais les valeur chaine sont vides

    comme ca tu saura quelle version ton system prend en compte
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  20. #20
    Invité
    Invité(e)
    Par défaut
    Bonjour Patrick,
    Merci je vais regarder!

Discussions similaires

  1. Explication sur List(Of Object).IndexOf(Object)
    Par Zakapatul dans le forum VB.NET
    Réponses: 2
    Dernier message: 01/12/2008, 15h55
  2. [C#] Quelles explications sur Object.Equals()
    Par vandamme dans le forum C#
    Réponses: 16
    Dernier message: 22/04/2006, 01h30
  3. s.v.p :explication sur le ".h" et dll de l'opengl
    Par Asmod_D dans le forum OpenGL
    Réponses: 1
    Dernier message: 22/11/2004, 10h32
  4. Réponses: 28
    Dernier message: 18/08/2003, 11h54
  5. recherches des cours ou des explications sur les algorithmes
    Par Marcus2211 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 19/05/2002, 22h18

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