ใน powershell มันเป็นไปได้มั้ยที่จะได้เป็นตารางคู่ลำดับของ RegistryKeys
ตาม:
$hkeys = Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
ตอนที่ฉันตรวจสอบคนแรกธาตุของอาเรย์นี่คือสิ่งที่ฉันได้:
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
ดูเหมือนแปลกไปหน่อย,ดังนั้นผมมองต่อไป:
> $hkeys[0].property.gettype
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String[] System.Array
คนส่วนประกอบใน property
แอททริบิวต์,ตั้งแต่พวกเขาเป็น delimited โดยเครื่องหมาย: :
ไม่ได้ดูเหมือนจะใช้เส้นสาย,ดังนั้นฉันดูหน่อยต่องแต่พบว่าพวกเขาแน่นอน String
วัตถุ:
> $hkeys[0].property[0].gettype
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
ตั้งแต่พวกเขาโผล่มาเพื่อเป็นข้อความ™à§à±à•à-à ฉันพยายามที่จะพลังงานสะท้อนครั้งแรก อย่างไรก็ตามมันเท่านั้นแสดงก่อนส่วนหนึ่งของข้อความแล้วไม่ใช่คนส่วนหนึ่งหลังจากลำไส้คนเรายาว:
> $hkeys[0].property[0]
DisplayName
ฉันรู้สึกเหมือนมีบางอย่างสมมติฐานของซึ่งฉันไม่เข้าใจอยู่ที่นี่ เป็นส่วนประกอบของที่อาเรย์จริงๆ String
วัตถุ? ถ้างั้น,ทำไมถึงไม่ส่วนหลังจากลำไส้คนเรายาวปรากฏตัวดีหรือเปล่า