Windows 10 pokazuje wszystkie ustawienia zgodności aplikacji obowiązujące dla uruchomionego programu


0

Oprócz garstki ustawialnych ustawień zgodności aplikacji dostępnych w zakładce kompatybilności, jest ich cała łup, a system Windows ma silnik, który wykrywa i automatycznie stosuje kilka, bez konieczności zauważania tego przez użytkownika za kulisami. Wiem, że możesz użyć zestawu narzędzi do sprawdzania zgodności aplikacji, aby ustawić je ręcznie, ale zanim przejdę do nich, czy jest jakiś sposób, aby przeczytać / zobaczyć, jakie ustawienia zgodności są obecnie używane przez system Windows dla określonego programu? Jest to praca badawcza mająca na celu poprawę wydajności / wyświetlania starego 32-bitowego programu, a nie (jeszcze) niczego, na co mogę wskazać palcem lub czegoś konkretnego, co jest całkowicie zepsute. Wiem, że działa kilka warstw kompatybilności aplikacji. Chcę mieć możliwość wyświetlania wszystkich / wszystkich ustawień zgodności obowiązujących dla określonego programu. Nie potrzebuję kodu itp. jeśli muszę kodować, mogę to zrobić sam. po prostu muszę wiedzieć, gdzie szukać WSZYSTKICH ustawień zgodności aplikacji obowiązujących dla programu.

Uruchamianie Win10 pro 64-bit.

Odpowiedzi:


1

Zdecydowanie polecam instalację zestawu Windows Assessment and Deployment Kit. To jest nowa wersja zestawu narzędzi do sprawdzania zgodności aplikacji (i nie musisz używać SQL!). W ten sposób będziesz mógł zobaczyć, jakie ustawienia są zastosowane do jakich aplikacji.

Pozwala zobaczyć bazę danych kompatybilności i wyszukać plik exe, jeśli znajduje się na liście znanych programów z kompatybilnością. Pozwala także zastosować większy zakres opcji zgodności w porównaniu do opcji wbudowanych w Windows 10.

Możesz także wyświetlić zastosowane ustawienia w rejestrze:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

Możesz również zobaczyć ustawienia zastosowane do aplikacji w zestawie narzędzi, jednak czasami może to być mniej szczegółowe niż rejestr.

Aby zobaczyć, jakie flagi są stosowane do działającej aplikacji, możesz użyć narzędzia, takiego jak haker procesu, aby wyświetlić __COMPAT_LAYERzmienną środowiskową, która pokazuje aktualnie zastosowane ustawienia.


Czy ACT naprawdę pokazuje wszystkie ustawienia? W rejestrze jestem pewien, że to tylko niektóre rzeczy, które są tam pokazane, a nie wszystkie ustawienia, które obowiązują podczas uruchamiania programu. Mechanizm zgodności sprawdza niektóre elementy przy każdym uruchomieniu programu, pobiera manifest i zastępuje ustawienia rejestru i stosuje rzeczy specyficzne dla wersji systemu Windows. Naprawdę chcę zobaczyć wszystkie ustawienia kompatybilności, a nie ich podzbiór. ACT to zrobi?
Chris

Zaktualizowałem swoją odpowiedź. Próbowałem ACT, ale wydaje się, że wciąż coś pomija. Miałem spojrzenie na __COMPAT_LAYERrodowisku zestawu zmiennych w kontekście procesów, wydaje się dostarczyć listę warstw, które są stosowane do aplikacji.
mt025

wielkie dzięki. myślę, że __COMPAT_LAYER w procesie hakera będzie pasował.
Chris

Jeśli ktokolwiek kiedykolwiek potrzebuje procesu, aby nie dodawać do rejestru kilku ustawień zgodności i odtwarzać ich ponownie, gdy się ich pozbędziesz ... usuń wpisy i wyłącz usługę zgodności aplikacji. Istnieje co najmniej jeden dodatkowy sposób ustawiania flag zgodności za pomocą pliku manifestu. Jak wszystko stwardnienie rozsiane, prosta rzecz złożony bałagan.
Chris
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.