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

Scripts/Batch Discussion :

obtenir de l'aide sur une méthode [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut obtenir de l'aide sur une méthode
    Bonjour,

    une question de débutant en powershell.

    J'ai une variable $data, dont j'ai listé les méthodes et les propriétés avec $data|get-member mais maintenant, je voudrais obtenir l'aide sur la méthode Contains. J'ai essayéhelp $data.Contains et help $data->Contains mais ça ne donne rien.
    Dans le 1er cas :
    Get-Help : Get-Help could not find bool IList.Contains(System.Object value) in a help file in this session.
    et dans le 2e :
    Get-Help : Illegal characters in path.
    Le but est d'afficher le contenu de la variable. Que faut-il faire ?

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Salut,
    il faut interroger MSDN, on peut aussi ajouter un membre personnalisé pour tous les objets :
    Code Powershell : 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
     
    @'
    <?xml version="1.0" encoding="utf-8" ?>
    <!-- *******************************************************************
    Permet de retrouver dans la MSDN la page de description d'une classe ou d'une méthode
    ******************************************************************** -->
    <Types>
      <Type> 
         <Name>System.Object</Name> 
         <Members> 
           <ScriptMethod> 
             <Name>MSDN</Name> 
             <Script> 
                $culture = $host.currentculture 
                if ($args[0]) 
                { 
                $culture = $args[0] 
                } 
     
                if (($global:MSDNViewer -eq $null) -or ($global:MSDNViewer.HWND -eq $null)) 
                { 
                $global:MSDNViewer = new-object -ComObject InternetExplorer.Application 
                } 
                $className=$this.GetType().FullName
                if ($className -eq "System.RuntimeType") 
                 { $className =$this.FullName}
                $Uri = "http://msdn2.microsoft.com/" + $culture + "/library/" + $className + "(VS.80).ASPX"
                $global:MSDNViewer.Navigate2($Uri) 
                $global:MSDNViewer.Visible = $TRUE
                $global:MSDNViewer.Top=$global:MSDNViewer.Document.ParentWindow.Screen.Height
                $global:MSDNViewer.Left=$global:MSDNViewer.Document.ParentWindow.Screen.Width
                $ShellObj = New-Object -ComObject WScript.Shell 
                $ShellObj.AppActivate((Get-Process | Where {$_.MainWindowHandle -eq $global:MSDNViewer.HWND}).Id)
             </Script> 
           </ScriptMethod> 
         </Members> 
      </Type>
    </Types> 
    '@ > PSProfile>System.Object.Types.ps1xml
     
    #Ensuite charger ce fichier via le profile
    Update-TypeData -PrependPath  PSProfile\System.Object.Types.ps1xml
     
    #usage
    $data.Contains.MSDN()

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Merci pour la réponse. Néanmoins, je ne parviens pas à créer un profil. Voilà ce que j'ai fait :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (!(Test-Path -Path $PROFILE.CurrentUserAllHosts)) 
    { New-Item -Type File -Path $PROFILE.CurrentUserAllHosts -Force }
    mais pas de fichier profil...

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Crée le directement dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\Users\USERNAME\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    Ensuite tu y places qq chose comme ceci :
    Code Powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $SM = [System.Environment+SpecialFolder]::MyDocuments
    $PSProfile="$([System.Environment]::GetFolderPath($SM))\WindowsPowerShell"
    $PSScripts=$PSProfile+"\Scripts"
     
    # ------------- Types personnalisés
    $Local:F=Get-Childitem $PSScripts|Where {$_.name -match 'types.ps1xml$'}
    if ($null -ne $Local:F)
     {
      Write-Host "`n`rImport des types personnalisés"
      $Local:F|Foreach {$_.Fullname; Update-TypeData -prepend $_.Fullname}
      }
     else {Write-Host "`n`rAucun type personnalisé"}

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Merci pour la réponse.

    Chez moi le répertoire "WindowsPowerShell\v1.0" est dans "C:\Windows\System2" et si je remplace "MyDocuments" par "Windows\System2", "unexpected...". Donc comment faire ?

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Le chemin et le nom du fichier dépend de la 'portée' du profile, pour un utilisateur, pour tous
    Code Powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $profile|select *
    #AllUsersAllHosts       : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
    #AllUsersCurrentHost    : C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
    #CurrentUserAllHosts    : C:\Users\Laurent\Documents\WindowsPowerShell\profile.ps1
    #CurrentUserCurrentHost : C:\Users\Laurent\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
     
    #Le détail dans le fichier d'aide :
    get-help about_Profiles|more
    *CurrentHost étant une console/session Powershell et AllHosts* les applications qui intégrent le runtime Powershell (vscode,ISE,PowerGUI etc).

    Le dernier exemple donné correspondant à ma configuration CurrentUserCurrentHost.

  7. #7
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Ca progresse mais c'est pas encore ça...D'abord, le fichier d'aide détaillé, imprimé il fait 12 pages...
    Néanmoins pour créer un profil, j'ai vu que par défaut, powershell essaye de lancer le profil "CurrentUserCurrentHost" et qu'il faut le renommer "Microsoft.PowerShell_profile.ps1" pour qu'il le trouve. Je l'ai fait. Comme ce fichier était vide, j'y ai placé le script de la discussion 4, mais quand je lance powershell ...
    Redirection to 'C:\Windows\System32\WindowsPowerShell\v1.0>System.Object.Types.ps1xml' failed: Illegal characters in path.
    At C:\windows\System32\WindowsPowerShell\v1.0\profile.ps1:1 char:1
    + @'
    + ~~
    + CategoryInfo : InvalidOperation: ( [], RuntimeException
    + FullyQualifiedErrorId : RedirectionFailed

    Update-TypeData : Cannot find path 'C:\Users\sesa27384\PSProfile\System.Object.Types.ps1xml' because it does not exist.
    At C:\windows\System32\WindowsPowerShell\v1.0\profile.ps1:41 char:1
    + Update-TypeData -PrependPath PSProfile\System.Object.Types.ps1xml
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (PSProfile\System.Object.Types.ps1xml:String) [Update-TypeData], ItemNotFoundException
    + FullyQualifiedErrorId : TypesPrependPathException,Microsoft.PowerShell.Commands.UpdateTypeDataCommand


    Action DisplayName Shortcut Submenus
    ------ ----------- -------- --------
    Copy-HistoryItem Show history System.Windows.Input.KeyGesture {}


    Get-Childitem : Cannot find path 'C:\Users\sesa27384\Documents\WindowsPowerShell\Scripts' because it does not exist.
    At C:\Users\sesa27384\Documents\WindowsPowerShell\Microsoft.PowerShellISE_profile.ps1:6 char:10
    + $Local:F=Get-Childitem $PSScripts|Where {$_.name -match 'types.ps1xml$'}
    + ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (C:\Users\sesa27...erShell\Scripts:String) [Get-ChildItem], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand


    Aucun type personnalisé

  8. #8
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    L'exemple est extrait de mon profil (PS v2),il faut l'adapter.
    De plus il faut créer un répertoire Scripts OU crée le fichier ps1xml dans le répertoire du profile :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $PSProfile=Split-Path $profile.CurrentUserCurrentHost -Parent
     
    #puis
    $PSScripts=$PSProfile+"\Scripts"
     
    #Ou selon ton choix
    $PSScripts=$PSProfile
     
    #ou encore pour simplifier, si tu n'utilises pas de répertoire dédié 
    $Local:F=Get-Childitem $PSProfile|Where {$_.name -match 'types.ps1xml$'}

  9. #9
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    J'avance car j'ai désormais un profil : fichier profile.ps1 dans C:\Windows\System2\WindowsPowershell\v1.0
    J'en suis car j'ai mis dedans le script qu'on m'a donné dans https://www.developpez.net/forums/d1...que-ne-marche/ et il est bien pris en compte.
    Par contre, pas moyen de charger le fichier ps1xml...

    Comme il y a plusieurs endroits avec des fichiers powershell :
    - C:\Windows\System2\WindowsPowershell\v1.0
    - C:\Utilisateurs\sesa27384\Mes documents\WindowsPowerShell
    où faut-il créer le répertoire "Script" et y placer le fichier "System.Object.Types.ps1xml" ?

  10. #10
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    où faut-il créer le répertoire "Script" et y placer le fichier "System.Object.Types.ps1xml" ?
    Tu le charges là où il se trouve, quitte à coder en dur dans le ficher profile pour tester.
    Le répertoire scripts sert à organiser/centraliser les fichiers, les variables $PSScript et $PSProfile sont utilisés dans d'autres scripts.
    Ici tu fais comme tu veux.

    Mais déjà vérifie que le fichier est correct en le chargeant dans la console. Ce code fonctionne depuis des années sur les versions de 2 à 5.1 et PS Core.
    En cas d'erreur, affiche le détail de la variable $Error[0].

  11. #11
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Ca a fini par fonctionner : le répertoire "Scripts" est dans "C:\Utilisateurs\sesa27384", donc au même niveau que "Mes documents", et j'ai corrigé le bug du fichier ps1xml en enlevant les @ ! car au début, j'avais mis :
    Code ps1xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    @'
    <?xml version="1.0" encoding="utf-8" ?>
    ...
    </Types> 
    '@

    Maintenant MSDN est bien interrogé mais aucune information sur la méthode Contains...Ca m'ouvre cette page
    alors que j'ai bien mis dans mon script $data.Contains.MSDN()

  12. #12
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Maintenant MSDN est bien interrogé mais aucune information sur la méthode Contains
    Oui, c'est une imprécision dans ma première réponse. Le code actuelle recherche la classe et affiche la page de la classe sur MSDN.
    Il faut faire $Data.Msdn() puis rechercher la méthode dans la liste de la classe interrogée

  13. #13
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Tu es sûr ?
    Nous sommes désolés, la page que vous avez demandée est introuvable.

  14. #14
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Comment construis-tu ta variable $Data ?

    En modifiant le code, il est possible d'adresser la méthode ( https://msdn.microsoft.com/fr-fr/lib...(v=vs.80).aspx )
    Mais cela ne fonctionne que sur la doc du framework 2.0 (PS v1 et v2) les dernières versions utilisant une autre version du framework et qui utilise une autre manière de coder les url, la construction de l'url d'après le nom du type de la variable interrogé n'est plus possible ( https://msdn.microsoft.com/en-us/lib...v=vs.110).aspx ).

    Cette méthode Msdn() permet au débutant de se familiariser avec la doc du framework dotnet ( socle technique de Powershell), mais ensuite on utilises directement un marque page et la fonction search en précisant le nom complet de la classe : $Data.GetType().Fullname

  15. #15
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1

  16. #16
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Bon, je souhaite toujours analyser la variable $data. Comme Get-Member me dit qu'une des méthodes est GetType, je fais $data|GetType(), mais au lieu de me retourner un type, ça me retourne des lignes du genre
    CN=sesa449786,OU=Users,OU=Grenoble-38I,OU=Sites,OU=FR,OU=Countries,DC=eur,DC=gad,DC=schneider-electric,DC=com|GetType()
    C'est quoi le problème ?

  17. #17
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Bon, je souhaite toujours analyser la variable $data.
    Je n'ai pas d'AD sous la main pour tester ton code.

    Citation Envoyé par laurentSc Voir le message
    C'est quoi le problème ?
    Ce code $data|GetType() est invalide.
    Ta variable contient plusieurs objets de type différent ?
    Mais là sans jeu de test, je peux pas faire grand chose pour t'aider.

  18. #18
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Laurent Dardenne Voir le message
    Ta variable contient plusieurs objets de type différent ?
    J'en sais rien...

    Citation Envoyé par Laurent Dardenne Voir le message
    Mais là sans jeu de test, je peux pas faire grand chose pour t'aider.
    La seule possibilité que je vois : tu prends la main sur mon PC avec Teamviewer (demain !). Est-ce jouable ? Sur mon poste, la V11.

  19. #19
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Est-ce jouable ?
    Non, désolé.

  20. #20
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Bon, je continue à chercher.

    Si j'affiche simplement le contenu de la variable $data (dans le script, juste $data), j'obtiens :
    CN=sesa445337,OU=Users,OU=Elnath,OU=Bangalore,OU=Sites,OU=IN,OU=Countries,DC=apa,DC=gad,DC=schneider-electric,DC=com
    et ce que je souhaite, c'est juste retenir la première valeur (sesa445337). Comment la désigner ?

    EDIT 13:47 essai infructueux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Data|Select-Object @{Label = "Logon Name";Expression = {$_.CN}}@
    EDIT 16:56
    Citation Envoyé par Laurent Dardenne Voir le message
    Ce code $data|GetType() est invalide.
    pourquoi ? Car dans le bouquin que tu m'as conseillé (Windows Powershell-Les fondamentaux du langage), ils disent de faire comme ça page 110 pour déterminer le type d'une variable ($data.GetType())...et ça affiche
    CN=sesa449786,OU=Users,OU=Grenoble-38I,OU=Sites,OU=FR,OU=Countries,DC=eur,DC=gad,DC=schneider-electric,DC=com.GetType()
    donc il aime pas mais pourquoi ?

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

Discussions similaires

  1. Aide sur une méthode de requête oubliée
    Par Leduc08 dans le forum MySQL
    Réponses: 12
    Dernier message: 03/07/2015, 09h19
  2. Réponses: 0
    Dernier message: 20/05/2012, 20h58
  3. Réponses: 3
    Dernier message: 16/04/2004, 16h51
  4. Aide sur une requete de sélection
    Par stephdiplo150 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/01/2004, 10h40
  5. Aide sur une fenetre
    Par Ray-j dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 29/11/2002, 08h51

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