| Termin | Definicja |
|---|---|
| PowerShell Core nie widzi modułów z PS 5 | PowerShell Core niewidzące modułów z PS 5 wskazuje na różnice w architekturze modułów między Windows PowerShell 5.1 a wieloplatformowym PowerShell 7+. PowerShell Core nie widzi modułów z PS 5 – czym różnią się obie generacjeProblem opisany jako „PowerShell Core nie widzi modułów z PS 5” wynika najczęściej z tego, że PowerShell 7+ oraz Windows PowerShell 5.1 korzystają z odmiennych środowisk uruchomieniowych. Windows PowerShell 5.1 został zaprojektowany dla platformy .NET Framework i przez lata był dostarczany razem z systemem Windows. PowerShell Core, a następnie PowerShell 7+, działa na nowszej, wieloplatformowej platformie .NET. Sama obecność katalogu modułu na dysku nie oznacza więc, że każda jego funkcja będzie dostępna w aktualnie uruchomionej powłoce. W praktyce moduł może być zainstalowany poprawnie, a mimo to polecenie PowerShell Core nie widzi modułów z PS 5 – kontekst techniczny i porównanieWindows PowerShell 5.1 i PowerShell 7+ mogą być zainstalowane na tym samym komputerze, ale nie tworzą jednego wspólnego środowiska. Każda z powłok ma własne zmienne, własne ścieżki modułów oraz odrębny sposób obsługi zależności. Moduł dodany poleceniem uruchomionym w jednej wersji nie zawsze jest instalowany w lokalizacji, którą automatycznie przeszukuje druga wersja. Podstawowym punktem porównania jest zmienna Istotna jest także właściwość Ważny jest również sposób instalacji. Polecenie PowerShell Core nie widzi modułów z PS 5 – typowe problemy z importemJednym z częstych przypadków jest umieszczenie modułu w katalogu o podobnej nazwie, lecz innym poziomie zagnieżdżenia. PowerShell oczekuje zazwyczaj struktury, w której folder modułu zawiera plik Drugi przypadek to moduły oparte na poleceniach i bibliotekach dostępnych wyłącznie w Windows PowerShell 5.1. Mogą one korzystać z komponentów związanych ze starszym środowiskiem .NET, określonych mechanizmów rejestru, usług systemowych lub bibliotek natywnych. Wtedy komunikat może mówić o braku typu, biblioteki albo metody, mimo że folder modułu został odnaleziony. Nie jest to problem samej ścieżki, ale niezgodności zależności. Trudności powoduje także wersja modułu. W jednym z katalogów może znajdować się starsza edycja, a w innym nowsza. Polecenie Niektóre moduły są dostarczane jako część narzędzi producenta i nie powinny być kopiowane ręcznie między komputerami. Samo przeniesienie folderu może pominąć zależności, wpisy konfiguracyjne lub wymagane składniki. Bezpieczniejszym podejściem jest użycie oficjalnego repozytorium, właściwej wersji instalatora albo dokumentacji autora. Warto też zwrócić uwagę na komunikaty generowane przez PowerShell Core nie widzi modułów z PS 5 – praktyczne wskazówki diagnostyczneDiagnozę można rozpocząć od ustalenia, jaka powłoka rzeczywiście działa. Polecenie Kolejny etap powinien obejmować próbę jawnego importu z pełną ścieżką. Jeżeli import zadziała, przyczyną jest najprawdopodobniej konfiguracja Przydatne bywa sprawdzenie manifestu modułu poleceniem Jeżeli moduł przeznaczony jest wyłącznie dla Windows PowerShell 5.1, rozsądnym rozwiązaniem może być uruchomienie go w starszej powłoce, o ile producent nie udostępnia wersji zgodnej z PowerShell 7+. Nie należy zastępować plików systemowych ani kopiować bibliotek metodą prób i błędów. Przydatne jest zapisanie wersji systemu, wersji obu powłok, wyniku PowerShell Core nie widzi modułów z PS 5 – kiedy zgłosić się do serwisuDo serwisu warto zgłosić się wtedy, gdy moduł jest potrzebny do pracy, a kolejne próby instalacji zmieniają widoczność poleceń lub powodują błędy w innych skryptach. Szczególnej ostrożności wymaga sytuacja, w której na komputerze znajdują się jednocześnie różne wersje PowerShell, kilka kont użytkowników albo moduły instalowane przez różne programy. Wtedy przyczyną może być nie tylko brak folderu na ścieżce, ale również niespójna konfiguracja środowiska, uprawnienia do katalogu lub uszkodzona instalacja składnika. Warszawskie Pogotowie Komputerowe 24/7 zajmuje się analizą takich problemów na komputerach z systemem Windows, sprawdzając wersję powłoki, lokalizacje modułów, manifesty i komunikaty importu. Przed przekazaniem sprzętu warto przygotować nazwę modułu, polecenie wywołujące błąd, wynik |