Question Concatenation de chaine (Résolu)

Plus d'informations
il y a 16 ans 5 mois #1063 par olivier
Bonjour,
je test powershell avec csform
Mon probleme est le suivant, une valeur dans un edit qui est a recuper.
donc j'ai fais ca
[code:1]$button1.Add_Click({$groupe = ([ADSI]\"LDAP://\"+$iptext+\"/cn=toto,ou=test,dc=test,dc=local\"«»)})#)
[/code:1]

probleme, ben il considere que c 'est une operande te pas une concatenation.

donc comment faire..

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

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

Plus d'informations
il y a 16 ans 5 mois #1064 par Arnaud Petitjean
Réponse de Arnaud Petitjean sur le sujet Re:concatenation de chaine
Bonjour Rabi,

Tu n'as pas besoin d'utiliser un opérateur de concaténation. Tu peux écrire directement :

[code:1]$button1.Add_Click($groupe = ([ADSI]\&quot;LDAP://$iptext/cn=toto,ou=test,dc=test,dc=local\&quot;«»))[/code:1]

D'autre part j'ai retiré les accolades car elles n'ont pas lieu d'être.

Sinon, bien que le CSForm soit très utile, il est perfectible et il est parfois (souvent) nécessaire de mettre les mains dans le code.

Tiens nous au courant,

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

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

Plus d'informations
il y a 16 ans 5 mois #1067 par olivier
Réponse de olivier sur le sujet Re:concatenation de chaine
Effectivement j'ai rencontre un probleme avec csform, rien de grave, en fait sur le add-click il cree une erreur ({)) au lieu de ({}), mais bon c'est rien .
Mais bon si les acolade servent a rien..

J'ai teste comme tu l a fait et ca a plante, mais j'ai du faire une bourde, je connais pas ce type de language, plus delphi, etvbs..

merci
je teste
a+

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

Plus d'informations
il y a 16 ans 5 mois #1068 par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:concatenation de chaine
Arnaud,

Es-tu sûr qu'on puisse supprimer les accolades?

La méthode Add_Click() prend un Script Block en paramètre, et je crois qu'il faut entourer un Script Block par des accolades pour qu'il soit considéré comme tel par PowerShell:

[code:1]
$button.Add_Click($action = \&quot;Cliqué\&quot;«») # provoque une erreur
$button.Add_Click({$action = \&quot;Cliqué\&quot;}) # marche correctement[/code:1]

Janel

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

Plus d'informations
il y a 16 ans 5 mois #1069 par olivier
Réponse de olivier sur le sujet Re:concatenation de chaine
Bon j'ai pas votre niveau et je n'ai pas mis le code en entier.
donc le voila
[code:1]



[void][Reflection.Assembly]::LoadWithPartialName(\&quot;System.Windows.Forms\&quot;«»)
$button1 = new-object System.Windows.Forms.Button
$button2 = new-object System.Windows.Forms.Button
$nom = new-object System.Windows.Forms.TextBox
$label1 = new-object System.Windows.Forms.Label
$label2 = new-object System.Windows.Forms.Label
$uo = new-object System.Windows.Forms.TextBox
$label3 = new-object System.Windows.Forms.Label
$lan = new-object System.Windows.Forms.TextBox
$ip = new-object System.Windows.Forms.TextBox
$label4 = new-object System.Windows.Forms.Label
$richTextBox1 = new-object System.Windows.Forms.RichTextBox
#
# button1
#
$button1.Location = new-object System.Drawing.Point(54, 284)
$button1.Name = \&quot;button1\&quot;
$button1.Size = new-object System.Drawing.Size(113, 34)
$button1.TabIndex = 0
$button1.Text = \&quot;Lister users Groupe\&quot;
$button1.UseVisualStyleBackColor = $true
$button1.Add_Click($groupe = ([ADSI]\&quot;LDAP://$ip.text/cn=toto,ou=test,dc=test,dc=local\&quot;«»)):«»whistle:
## button2
##
$button2.Location = new-object System.Drawing.Point(180, 250)
$button2.Name = \&quot;button2\&quot;
$button2.Size = new-object System.Drawing.Size(113, 54)
$button2.TabIndex =11
$button2.Text = \&quot;Lister users Groupe1\&quot;
$button2.UseVisualStyleBackColor = $true
$button2.Add_Click({$richTextBox1.Text = $groupe.member})

# nom
#
$nom.Location = new-object System.Drawing.Point(158, 48)
$nom.Name = \&quot;nom\&quot;
$nom.Size = new-object System.Drawing.Size(91, 20)
$nom.TabIndex = 2
#
# label1
#
$label1.AutoSize = $true
$label1.Location = new-object System.Drawing.Point(221, 9)
$label1.Name = \&quot;label1\&quot;
$label1.Size = new-object System.Drawing.Size(43, 13)
$label1.TabIndex = 3
$label1.Text = \&quot;Domain\&quot;
#
# label2
#
$label2.AutoSize = $true
$label2.Location = new-object System.Drawing.Point(346, 23)
$label2.Name = \&quot;label2\&quot;
$label2.Size = new-object System.Drawing.Size(87, 13)
$label2.TabIndex = 4
$label2.Text = \&quot;Unite Organique\&quot;
#
# uo
#
$uo.Location = new-object System.Drawing.Point(344, 48)
$uo.Name = \&quot;uo\&quot;
$uo.Size = new-object System.Drawing.Size(89, 20)
$uo.TabIndex = 5
#
# label3
#
$label3.AutoSize = $true
$label3.Location = new-object System.Drawing.Point(186, 32)
$label3.Name = \&quot;label3\&quot;
$label3.Size = new-object System.Drawing.Size(29, 13)
$label3.TabIndex = 6
$label3.Text = \&quot;Nom\&quot;
#
# lan
#
$lan.Location = new-object System.Drawing.Point(255, 48)
$lan.Name = \&quot;lan\&quot;
$lan.Size = new-object System.Drawing.Size(83, 20)
$lan.TabIndex = 7
#
# ip
#
$ip.Location = new-object System.Drawing.Point(44, 48)
$ip.Name = \&quot;ip\&quot;
$ip.Size = new-object System.Drawing.Size(90, 20)
$ip.TabIndex = 8
$ip.text =\&quot;localhost\&quot;
#
# label4
#
$label4.AutoSize = $true
$label4.Location = new-object System.Drawing.Point(59, 20)
$label4.Name = \&quot;label4\&quot;
$label4.Size = new-object System.Drawing.Size(17, 13)
$label4.TabIndex = 9
$label4.Text = \&quot;IP\&quot;
#
# richTextBox1
#
$richTextBox1.Location = new-object System.Drawing.Point(74, 118)
$richTextBox1.Name = \&quot;richTextBox1\&quot;
$richTextBox1.Size = new-object System.Drawing.Size(315, 146)
$richTextBox1.TabIndex = 10
$richTextBox1.Text = \&quot;\&quot;
#$richTextBox1.TextChanged += new-object System.EventHandler($richTextBox1_TextChanged)
#
$Form1 = new-object System.Windows.Forms.form
# Form1
#
$Form1.ClientSize = new-object System.Drawing.Size(492, 375)
$Form1.Controls.Add($richTextBox1)
$Form1.Controls.Add($label4)
$Form1.Controls.Add($ip)
$Form1.Controls.Add($lan)
$Form1.Controls.Add($label3)
$Form1.Controls.Add($uo)
$Form1.Controls.Add($label2)
$Form1.Controls.Add($label1)
$Form1.Controls.Add($nom)
$Form1.Controls.Add($button1)
$Form1.Controls.Add($button2)
$Form1.Name = \&quot;Form1\&quot;
$Form1.Text = \&quot;Form1\&quot;
$Form1.ShowDialog()


[/code:1]

j'ai mis un wisle la ou ca plante, j'ai essaye £ip, £ip.text, avec et sant les +.
ca plante

merci

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

Plus d'informations
il y a 16 ans 5 mois #1072 par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:concatenation de chaine
Regarde si ça marche comme tu veux en remplaçant la ligne en question par:

[code:1]$button1.Add_Click({$groupe = [ADSI]\&quot;LDAP://$ip.text/cn=toto,ou=test,dc=test,dc=local\&quot;})[/code:1]

Janel

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

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