0
J'appelle un scriptblock d'un objet ServerObject dans une session distante. Dans le scriptblock je crée une hashtable et l'enregistre dans le ServerObject. À la fin du scriptblock, l'ordre est correct, après la session, les éléments sont dans le mauvais ordre.Comment puis-je conserver l'ordre d'une table de hachage ordonnée après une session à distance?
$Serv = New-Object -TypeName PSObject
$Serv | Add-Member -MemberType NoteProperty -Name Cn -Value Computername
$Serv | Add-Member -MemberType NoteProperty -Name Inf -Value ""
function getInf(){
$Inf = [ordered]@{
SiteConfig = "a";
BrokerController = "b";
AdminRoles = "c";
}
$Serv.Inf = $Inf
}
getInf
$ServResult = Invoke-Command -Cn $Serv.Cn -Credential $Cred -ScriptBlock {
param($Serv)
Invoke-Command -ScriptBlock ([ScriptBlock]::Create($Serv.getInf))
$Serv
}-ArgumentList $Serv
Remove-PSSession -ComputerName $Serv.Cn
$ServResult.Inf
Il peut s'agir d'un problème de sérialisation Clixml - https://connect.microsoft.com/PowerShell/Feedback/Details/771721 –
Je ne l'ai pas tapé depuis la mémoire. Le même code est dans mon script (le scriptblock et la session sont à deux endroits différents), mais je ne posterai pas mes 1330 lignes de code, juste pour poster du code de travail. Avez-vous une question concrète? – Temerita
@Temerita veuillez poster un exemple [minimal, complet et vérifiable] (http://stackoverflow.com/help/mcve) de votre code pour démontrer le problème. – alroc