Bonjour.
Je souhaite accéder à une variable initialisée hors d'un workflow, dans un workflow.
Ce workflow fait un foreach parallel pour pinger une liste de machine, et pour chaque poste qui répond, copie un dossier.
Cependant, le dossier pouvant changer, l'utilisateur sélectionnera sa cible via une dialog box pour choisir son répertoire.
Mon Workflow ressemble a ceci :
Seulement, la variable $location renvoi la valeur null apparemment (message d'erreur powershell). Ca fonctionne si je l'inclue dans le workflow, mais avec le "folder-picker" que je vais utiliser, il faut impérativement que cette variable soit créée en dehors du workflow, et accédée à l'intérieur de celui-ci. A moins qu'il est possible d'inclure le "folder-picker" dans le workflow, mais je n'ai pas réussi.
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 $ip_list = Get-Content -LiteralPath ".\pclist.txt" workflow parallelPingCOmputer { Param($computers, $location) foreach -parallel($computer in $computers) { $ping = $null If (Test-Connection -ComputerName $computer -Count 1 -quiet) { $ping = "Le poste répond" Copy-Item -Path $location -Destination "\\$computer\c$\destination\" -Force -Recurse -ErrorAction stop } else { $ping = "Le poste ne répond pas" } $arrayResults = New-Object -Type PSObject -Property @{ Hostname = $computer Ping = $ping } return($arrayResults) } } parallelPingComputer -computers $ip_list | Select-Object Hostname, ping | Out-GridView
Auriez-vous une idée svp ?
Merci beaucoup d'avance.
Partager