Dans powershell, il est possible d'obtenir un tableau de RegistryKeys
comme suit:
$hkeys = Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Quand j'ai inspecter le premier élément de ce tableau, c'est ce que j'obtiens:
Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Name Property
---- --------
7-Zip DisplayName : 7-Zip 21.03 beta (x64)
DisplayVersion : 21.03 beta
DisplayIcon : C:\Program Files\7-Zip\7zFM.exe
InstallLocation : C:\Program Files\7-Zip\
UninstallString : "C:\Program Files\7-Zip\Uninstall.exe"
NoModify : 1
NoRepair : 1
EstimatedSize : 5237
VersionMajor : 21
VersionMinor : 3
Publisher : Igor Pavlov
Property
semblait un peu étrange, j'ai donc cherché plus loin encore dans ce:
> $hkeys[0].property.gettype
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String[] System.Array
Les éléments de la property
attribut, car ils sont délimités par une virgule :
ne semble pas comme des cordes, j'ai donc cherché un peu plus loin, mais a trouvé qu'ils sont en effet String
objets:
> $hkeys[0].property[0].gettype
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
Depuis, ils semblent être des objets string, j'ai essayé de faire écho à la première. Cependant, il ne montre que la première partie de la chaîne et non pas la partie après la virgule:
> $hkeys[0].property[0]
DisplayName
Je se sentir comme il ya quelque chose de fondamental dont je ne comprends pas ici. Sont les éléments du tableau vraiment String
les objets? Si oui, pourquoi ne pas la partie après les deux points apparaissent?