Get-ItemProperty odczytuje wartości z rejestru systemowego, przydatne przy diagnozowaniu konfiguracji instalacji.
Get-ItemProperty w modelu dostawców PowerShell
Get-ItemProperty to cmdlet PowerShell służący do odczytywania właściwości elementów wskazanych przez ścieżkę. W przypadku rejestru systemowego korzysta z dostawcy Registry, który udostępnia klucze rejestru w postaci podobnej do katalogów, a wartości zapisane w kluczu przedstawia jako właściwości obiektu. Dzięki temu można odczytać konfigurację programu, ustawienia systemowe lub parametry urządzenia bez używania edytora rejestru.
Typowa ścieżka rejestru ma postać HKLM:\ albo HKCU:\. Skrót HKLM: wskazuje gałąź HKEY_LOCAL_MACHINE, natomiast HKCU: odnosi się do HKEY_CURRENT_USER. Przykładowe polecenie Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Run' odczytuje właściwości klucza zawierającego ustawienia programów uruchamianych dla bieżącego użytkownika. Wynik jest obiektem PowerShell, dlatego poszczególne wartości można dalej filtrować, formatować lub przekazywać do innych poleceń.
Odczyt konkretnej wartości z klucza rejestru
Sam parametr -Path powoduje odczyt właściwości klucza, ale nie ogranicza wyniku do jednej wartości. Jeżeli potrzebna jest konkretna nazwa, można użyć parametru -Name, na przykład Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' -Name ProductName. Polecenie zwróci właściwość ProductName, o ile istnieje ona w wskazanym kluczu. Nazwa właściwości musi odpowiadać nazwie zapisanej w rejestrze; pomylenie nazwy klucza z nazwą wartości prowadzi do błędu albo do niepełnego wyniku.
Wartość można wybrać z obiektu za pomocą notacji kropkowej, na przykład (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').DisplayVersion. Przy pracy ze ścieżkami zawierającymi spacje bezpiecznie jest używać pojedynczych lub podwójnych cudzysłowów. Parametr -LiteralPath służy do traktowania podanej ścieżki dosłownie, bez interpretowania znaków wieloznacznych. Ma to znaczenie w skryptach, w których ścieżka pochodzi ze zmiennej albo została pobrana z innego źródła.
Porównywanie ustawień i obsługa brakujących danych
Get-ItemProperty jest przydatny wtedy, gdy trzeba porównać konfigurację odczytaną z kilku komputerów lub sprawdzić, czy określony wpis został utworzony. Przykładowo Get-ItemProperty -Path 'HKCU:\Software\ExampleApp' | Select-Object Version, InstallPath ogranicza wyświetlane właściwości do wskazanych nazw. Polecenie Select-Object nie zmienia rejestru; jedynie wybiera pola z obiektu zwróconego przez cmdlet. Do sprawdzenia kilku kluczy można wykorzystać tablicę ścieżek oraz parametr -Path, podając kolejne elementy oddzielone przecinkami.
Brak klucza lub wartości należy rozróżnić od wartości pustej i od wartości o typie innym niż oczekiwany. Odczyt nieistniejącego klucza zwykle kończy się błędem zgłaszanym przez dostawcę rejestru. W skrypcie można użyć parametru -ErrorAction Stop i obsługi try/catch, aby nie traktować braku konfiguracji jako poprawnego odczytu. Przy analizie wyniku warto także pamiętać o 32-bitowej i 64-bitowej perspektywie rejestru. Na 64-bitowym systemie Windows proces 32-bitowy może korzystać z mechanizmu przekierowania części ścieżek rejestru, więc wynik może zależeć od wersji uruchomionego PowerShella oraz badanego programu.
Bezpieczne użycie podczas diagnostyki systemu Windows
Get-ItemProperty wykonuje odczyt i sam w sobie nie zapisuje zmian w rejestrze. Nie oznacza to jednak, że każdy odczyt jest dostępny bez ograniczeń. Dostęp do niektórych kluczy może wymagać uruchomienia PowerShella z odpowiednimi uprawnieniami, a polityki systemowe lub zabezpieczenia programu mogą ograniczać widoczność danych. Do samego odczytu nie należy używać poleceń modyfikujących, takich jak Set-ItemProperty albo New-ItemProperty, ponieważ mają one odmienny skutek i mogą zmienić konfigurację systemu.
Podczas diagnozowania laptopa lub komputera PC wynik warto zapisać razem ze ścieżką, nazwą wartości i informacją o kontekście użytkownika. HKCU: pokazuje ustawienia bieżącego profilu, a HKLM: ustawienia dotyczące całego systemu. Zestawienie tych danych z objawami, wersją zainstalowanego programu i stanem usług pozwala ograniczyć ryzyko błędnej interpretacji. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, a odczyt właściwości rejestru może być jednym z elementów technicznej diagnostyki problemów z systemem Windows lub konfiguracją oprogramowania.