Question Pb affichage resultat script (Résolu)

Plus d'informations
il y a 14 ans 3 mois #1008 par bordin
Bonjour,
j'ai tourné la chose dans tous les send avant de vous le soumettre!

J'ai ce code qui m'affiche un résultat apparement que je n'attendais pas.
[code:1]
$btnSCANPSS.add_click(
{
$LesProcess=gwmi win32_process -computer $nomSRV
$data=@($LesProcess | select name )
$array= new-object System.Collections.ArrayList
$array.AddRange($data)
$cbxListeprocess.datasource=$array
}
)[/code:1]
A l'affichage j'ai un truc du style:
@{name=nom processus1;exe}
@{name=nom processus2;exe}
au lieu de:
nom processus

:blink: Quelqu'un peut-il me dire ou j'ai buggé?

Merci<br><br>Message édité par: Arnaud, à: 16/10/07 13:10

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 3 mois #1010 par Eric
Réponse de Eric sur le sujet Re:pb affichage resultat script
Bonsoir,

pour ma part lorsque j'exécute le script que vous avez posté, j'obtiens une erreur en rapport avec l'objet \&quot;$cbxListeprocess\&quot; pour lequel le message explique qu'il ne trouve aucune propriété \&quot;datasource\&quot;

(ce qui me parait assez logique étant donné qu'avec le seul bout de code que vous avez donné, aucun type n'est spécifié pour la variable \&quot;$cbxListeprocess\&quot;)

Je suppose qu'il nous manque un bout du code complet pour tester tout cela.. ;)

No pain,no gain.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 3 mois #1011 par Jacques Barathon
Le contrôle $cbxListeProcess est-il un DataGridView? As-tu mis sa propriété AutoGenerateColumns à $true?

Sinon, peux-tu nous poster également le code qui crèe le contrôle?

Janel

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 3 mois #1013 par bordin
Réponse de bordin sur le sujet Re:pb affichage resultat script
salut,

En fait c'est une CheckedListbox et pas une datagridview. Je veux pouvoir sélectionner les éléments par la suite.

Voila le code pour le Form:

[code:1]
[void][Reflection.Assembly]::LoadWithPartialName(\&quot;System.Windows.Forms\&quot;«»)
$cbxListeProcess = new-object System.Windows.Forms.CheckedListBox
$btnSCANPSS = new-object System.Windows.Forms.Button
# cbxListeProcess
#
$cbxListeProcess.FormattingEnabled = $true
$cbxListeProcess.Location = new-object System.Drawing.Point(6, 19)
#$cbxListeProcess.Multiline = $true
$cbxListeProcess.Name = \&quot;cbxListeProcess\&quot;
#$cbxListeProcess.ScrollBars = \&quot;Vertical\&quot;
$cbxListeProcess.Size = new-object System.Drawing.Size(300, 200)
$cbxListeProcess.TabIndex = 15
#
#
# btnSCANPSS
#
$btnSCANPSS.Location = new-object System.Drawing.Point(6, 300)
$btnSCANPSS.Name = \&quot;btnSCANPSS\&quot;
$btnSCANPSS.Size = new-object System.Drawing.Size(75, 23)
$btnSCANPSS.TabIndex = 11
$btnSCANPSS.Text = \&quot;Scan-PSS\&quot;
$btnSCANPSS.UseVisualStyleBackColor = $true
$btnSCANPSS.add_click(
{
$LesProcess=gwmi win32_process -computer $nomSRV
$data=@($LesProcess | select name )
$array= new-object System.Collections.ArrayList
$array.AddRange($data)
$cbxListeprocess.source=$array
}
)
#
$Form1 = new-object System.Windows.Forms.form
# CBMON
#
$Form1.ClientSize = new-object System.Drawing.Size(500, 400)
$Form1.AutoSize = $True
$Form1.Controls.Add($btnSCANPSS)
$Form1.Controls.Add($cbxListeProcess)
$Form1.Name = \&quot;Form1\&quot;
$Form1.Text = \&quot;TEst\&quot;
$Form1.ShowDialog()
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 3 mois #1015 par Jacques Barathon
Ok, je vois.

Dans ce cas-là, il faut que tu remplaces ton \&quot;select name\&quot; par un \&quot;foreach {$_.name}\&quot;.

Le problème vient du fait qu'au moment d'afficher le contenu de sa source, le contrôle ne sait pas automatiquement mapper son texte à la propriété Name. Avec le code que je te propose ci-dessus, la source est une suite d'objets texte (System.String) donc le contrôle sait tout de suite comment traiter l'information.

Au passage, dans la version complète que tu fournis, tu as écrit $cbxListeProcess.Source au lieu de $cbxListeProcess.DataSource, ce qui génère une erreur sur mon poste.

Janel

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 3 mois #1020 par bordin
Salut,

Merci beaucoup Janel. Je saurais dorénavant comment faire.
It's work fine!

Bon, ben au prochain bug alors! :laugh:

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.070 secondes
Propulsé par Kunena