Jak zmienić ustawienia wyświetlania systemu za pomocą PowerShell

PowerShell to niezwykle potężne narzędzie dla administratorów systemów Windows oraz użytkowników końcowych. W szczególności, jeśli chodzi o zmianę ustawień wyświetlania systemu, korzystanie z poleceń PowerShell zamiast GUI może zaoszczędzić czas i umożliwić tworzenie skryptów automatyzacji. Ten artykuł szczegółowo opisze, jak zmienić podstawowe ustawienia, takie jak rozdzielczość i orientacja wyświetlania za pomocą PowerShell, co pozwoli na bardziej efektywną i szybką personalizację środowiska systemowego.

Spis treści

Podstawy ustawień wyświetlania

Przed zmianą ustawień wyświetlania za pomocą PowerShell ważne jest, aby zrozumieć dostępne polecenia i ich podstawowe zastosowanie. W systemach Windows głównie używane są cmdlety 'Get-DisplayResolution’ i 'Set-DisplayResolution’ do sprawdzania i ustawiania rozdzielczości wyświetlania.

Sprawdzanie rozdzielczości

Aby sprawdzić bieżącą rozdzielczość wyświetlania, użyj następującego polecenia.

Get-DisplayResolution

To polecenie wyświetla bieżącą rozdzielczość wszystkich wyświetlaczy podłączonych do systemu.

Ustawianie rozdzielczości

Aby zmienić na określoną rozdzielczość, użyj cmdletu 'Set-DisplayResolution’ i określ żądaną rozdzielczość. Na przykład, aby ustawić rozdzielczość na 1920×1080, wykonaj poniższe polecenie.

Set-DisplayResolution -Width 1920 -Height 1080

To polecenie zmienia rozdzielczość wyświetlania systemu na określone wartości. Jednak użycie tego polecenia wymaga uprawnień administratora.

Zmiana orientacji wyświetlania

Aby zmienić orientację wyświetlania, mogą być potrzebne dodatkowe narzędzia lub skrypty, ale ogólnie jest to realizowane za pomocą 'DisplaySettings’ lub narzędzi firm trzecich.

Zmiana ustawień wyświetlania za pomocą PowerShell zaczyna się od tych podstawowych poleceń. Wykorzystując te polecenia, możesz swobodnie manipulować różnymi ustawieniami, takimi jak rozdzielczość i orientacja wyświetlania. W kolejnych sekcjach szczegółowo wyjaśnimy, jak dokładnie zmienić te ustawienia.

Jak zmienić rozdzielczość

Zmiana rozdzielczości wyświetlania za pomocą PowerShell jest niezwykle przydatna dla personalizacji systemu i tworzenia skryptów automatyzacji. W tej części konkretnie wyjaśnimy kroki zmiany rozdzielczości za pomocą skryptu.

Ustawianie rozdzielczości za pomocą skryptu

Najpierw utwórz skrypt do zmiany rozdzielczości. Ten skrypt będzie używał cmdletu Set-DisplayResolution do ustawienia wyświetlacza systemu na określoną rozdzielczość. Poniżej znajduje się przykładowy skrypt ustawiający rozdzielczość na 1920×1080.

# Skrypt PowerShell do ustawienia rozdzielczości na 1920x1080
try {
    # Sprawdzenie, czy uruchomiono z uprawnieniami administratora
    $currentUser = [Security.Principal.WindowsIdentity]::GetCurrent()
    $windowsPrincipal = New-Object Security.Principal.WindowsPrincipal($currentUser)
    $adminRole = [Security.Principal.WindowsBuiltInRole]::Administrator

    if ($windowsPrincipal.IsInRole($adminRole)) {
        # Ustawienie

 rozdzielczości
        Set-DisplayResolution -Width 1920 -Height 1080 -Force
        Write-Host "Rozdzielczość została ustawiona na 1920x1080.";
    } else {
        Write-Host "Do uruchomienia tego skryptu wymagane są uprawnienia administratora.";
    }
} catch {
    Write-Error "Wystąpił błąd podczas ustawiania rozdzielczości: $_";
}

Ten skrypt najpierw sprawdza, czy bieżący użytkownik ma uprawnienia administratora, a jeśli tak, przechodzi do zmiany rozdzielczości. Parametr -Force wymusza zmianę rozdzielczości bez potwierdzenia użytkownika.

Jak uruchomić skrypt

Po utworzeniu skryptu otwórz PowerShell w trybie administratora, przejdź do katalogu, w którym zapisany jest skrypt, a następnie wykonaj skrypt. Możesz uruchomić skrypt za pomocą następującego polecenia.

.\ChangeResolution.ps1

Jeśli skrypt zostanie pomyślnie uruchomiony, pojawi się komunikat mówiący „Rozdzielczość została ustawiona na 1920×1080.” i rozdzielczość wyświetlania systemu zmieni się na określoną wartość. Jeśli zmiana rozdzielczości się nie powiedzie z jakiegoś powodu, zostanie wyświetlony komunikat o błędzie.

Ta metoda umożliwia łatwe przełączanie między określonymi ustawieniami rozdzielczości, umożliwiając automatyzację przepływu pracy i szybkie zmiany ustawień systemu.

Dostosowywanie orientacji wyświetlania

Dostosowywanie orientacji wyświetlania za pomocą PowerShell jest szczególnie przydatne w środowiskach z wieloma monitorami lub do konkretnych zadań. Ta sekcja wyjaśni, jak zmienić orientację wyświetlania z poziomej na pionową lub odwrotnie za pomocą PowerShell.

Niestety, standardowe cmdlety PowerShell nie oferują bezpośrednio funkcjonalności zmiany orientacji wyświetlania. Jednak, tworząc skrypty wywołujące narzędzia firm trzecich lub Windows API, ta operacja może zostać wykonana.

Korzystanie z DisplaySettings

Jedna z metod polega na użyciu narzędzia wiersza poleceń firm trzecich o nazwie DisplaySettings. To narzędzie pozwala na bezpośrednie sterowanie orientacją wyświetlania z linii poleceń lub skryptów.

Podstawowe użycie DisplaySettings

Najpierw pobierz i zainstaluj DisplaySettings na swoim systemie. Następnie możesz zmienić orientację wyświetlania, wykonując następujące polecenie.

DisplaySettings /setorientation:portrait

To polecenie ustawia orientację wyświetlania na pionową. Podobnie, możesz użyć opcji /setorientation:landscape, aby zmienić ją na poziomą.

Skrypt wykorzystujący Windows API

Inna metoda polega na stworzeniu skryptu, który bezpośrednio wywołuje Windows API do zmiany orientacji wyświetlania. To podejście wymaga bardziej zaawansowanej wiedzy, ale pozwala na bardziej elastyczną kontrolę.

# Przykład: Koncepcyjny skrypt do zmiany orientacji wyświetlania za pomocą Windows API
# Uwaga: Ten kod jest koncepcyjny i nie zadziała w tej formie.
Add-Type -TypeDefinition @"
using System;
using System.Runtime.InteropServices;

public class Display {
    [DllImport("user32.dll")]
    public static extern bool SetDisplayConfig(...);
}
"@ 

# Konkretne wywołanie API do ustawienia orientacji wyświetlania
# Display.SetDisplayConfig(...);

W ten sposób istnieje kilka metod dostosowywania orientacji wyświetlania za pomocą PowerShell. Wybierz najlepszą metodę zgodnie ze swoim środowiskiem pracy i celami.

Zarządzanie wieloma ustawieniami wyświetlania

Korzystanie z wielu wyświetlaczy jest powszechne we współczesnych miejscach pracy, a efektywne konfigurowanie ustawień każdego wyświetlacza jest kluczowe dla skutecznego miejsca pracy. Ta sekcja przedstawia metody zarządzania wieloma ustawieniami wyświetlania za pomocą PowerShell.

Identyfikacja wielu wyświetlaczy

Pierwszym krokiem jest dokładna identyfikacja wielu wyświetlaczy. Za pomocą PowerShell można użyć cmdletu Get-WmiObject do pobrania informacji o wyświetlaczach podłączonych do systemu.

Get-WmiObject -Namespace root\wmi -Class WmiMonitorID | ForEach-Object {
    $monitor = $_
    $name = ($monitor.InstanceName -split "\#")[2]
    $serial = [System.Text.Encoding]::ASCII.GetString($monitor.SerialNumberID)
    Write-Host "Nazwa wyświetlacza: $name, Numer seryjny: $serial";
}

To polecenie wyświetla nazwę i numer seryjny każdego wyświetlacza podłączonego do systemu, pomagając w ich identyfikacji.

Ustawianie układu wyświetlaczy

Po zidentyfikowaniu wielu wyświetlaczy kolejnym krokiem jest ustawienie ich układu. Chociaż bezpośrednio nie można ustawić układu wyświetlaczy za pomocą PowerShell, można użyć DisplaySwitch.exe do zmiany układu wyświetlaczy za pomocą skryptu.

# Ustawienie wyświetlaczy w trybie rozszerzonym
Start-Process DisplaySwitch.exe -ArgumentList "/extend"

To polecenie instruuje system, aby używał podłączonych wyświetlaczy w trybie rozszerzonym. Podobnie, można użyć opcji /clone, /internal, /external do zmiany trybu wyświetlania.

Indywidualne ustawienia dla rozdzielczości i orientacji

W konfiguracji z wieloma wyświetlaczami możesz chcieć ustawić rozdzielczość i orientację indywidualnie dla każdego wyświetlacza. Użyj wcześniej wprowadzonego cmdletu Set-DisplayResolution oraz narzędzi firm trzecich do zmiany orientacji wyświetlania, aby dostosować ustawienia dla każdego wyświetlacza.

Zarządzanie wieloma ustawieniami wyświetlania obejmuje dokładną identyfikację wyświetlaczy, właściwe ustawienie układu oraz dostosowanie rozdzielczości i orientacji dla każdego wyświetlacza według potrzeb. Wykorzystując PowerShell, te procesy mogą być zautomatyzowane, tworząc bardziej efektywne środowisko pracy.

Przykład zastosowania: Automatyczna zmiana ustawień wyświetlania podczas uruchamiania określonych aplikacji

Ręczne dostosowywanie rozdzielczości i orientacji wyświetlania za każdym razem, gdy pracujesz z określoną aplikacją, może być uciążliwe. Ten przykład zastosowania przedstawia metodę automatycznej zmiany ustawień wyświetlania podczas uruchamiania aplikacji za pomocą skryptów PowerShell. W tym przykładzie skrypt zmieni rozdzielczość po uruchomieniu aplikacji i przywróci oryginalną rozdzielczość po zamknięciu aplikacji.

Przegląd skryptu

Ten skrypt działa w następujący sposób:

  1. Uruchomienie określonej aplikacji.
  2. Zmiana rozdzielczości wyświetlania na określoną wartość, gdy aplikacja zostanie uruchomiona.
  3. Przywrócenie oryginalnej rozdzielczości po zamknięciu aplikacji.

Tworzenie skryptu

Poniżej znajduje się przykładowy skrypt PowerShell, który wykrywa uruchomienie określonej aplikacji (np. Photoshop), zmienia rozdzielczość i przywraca rozdzielczość po zamknięciu aplikacji.

# Ścieżka aplikacji
$appPath = "C:\Program Files\Adobe\Adobe Photoshop\Photoshop.exe"
# Nowa rozdzielczość
$newWidth = 1920
$newHeight = 1080
# Zapisanie oryginalnej rozdzielczości
$originalResolution = Get-DisplayResolution

# Uruchomienie aplikacji
Start-Process $appPath

# Zmiana rozdzielczości
Set-DisplayResolution -Width $newWidth -Height $newHeight -Force

# Oczekiwanie na zamknięcie aplikacji
$process = Get-Process | Where-Object { $_.Path -eq $appPath }
while ($process -ne $null) {
    Start-Sleep -Seconds 5
    $process = Get-Process | Where-Object { $_.Path -eq $appPath }
}

# Powrót do oryginalnej rozdzielczości
Set-DisplayResolution -Width $originalResolution.Width -Height $originalResolution.Height -Force

Ten skrypt jest zaprojektowany do automatycznego przełączania na optymalną rozdzielczość do pracy z określoną aplikacją (w tym przykładzie Photoshop) i przywracania ustawień użytkownika po zakończeniu pracy. Ta metoda może znacznie poprawić efektywność pracy.

Rozwiązywanie problemów: Wspólne problemy i rozwiązania

Podczas zmiany ustawień wyświetlania za pomocą PowerShell mogą pojawić się różne wspólne problemy. Ta sekcja przedstawia te problemy oraz ich rozwiązania.

Nie można zmienić rozdzielczości

  • Przyczyna: Docelowy wyświetlacz może nie obsługiwać określonej rozdzielczości lub skrypt PowerShell nie jest uruchamiany z uprawnieniami administratora.
  • Rozwiązanie: Sprawdź specyfikacje wyświetlacza i określ tylko obsługiwane rozdzielczości. Ponadto, kliknij prawym przyciskiem myszy na skrypt i wybierz „Uruchom jako administrator”, aby go wykonać.

Nie można zmienić orientacji wyświetlania

  • Przyczyna: Zmiana orientacji wyświetlania może wymagać konkretnych narzędzi lub wywołań do Windows API.
  • Rozwiązanie: Upewnij się, że używasz odpowiedniego narzędzia i rozważ wprowadzenie oprogramowania firm trzecich lub skryptów, które bezpośrednio manipulują Windows API, jeśli jest to konieczne.

Ustawienia dla wielu wyświetlaczy nie odzwierciedlają rzeczywistości

  • Przyczyna: Wyświetlacze mogą nie być poprawnie zidentyfikowane lub mogą wystąpić błędy podczas używania DisplaySwitch.exe.
  • Rozwiązanie: Ponownie potwierdź informacje identyfikacyjne dla podłączonych wyświetlaczy i upewnij się, że odpowiedni wyświetlacz jest docelowo ustawiany. Ponadto, przejrzyj opcje wiersza poleceń dla DisplaySwitch.exe, aby upewnić się, że używane są odpowiednie opcje.

Podsumowanie

Zmiana ustawień wyświetlania systemu za pomocą PowerShell jest niezwykle korzystna dla poprawy efektywności pracy i automatyzacji. Ten artykuł wprowadził szeroki zakres technik od podstawowych zmian ustawień wyświetlania po zarządzanie wieloma wyświetlaczami i automatyczne zmiany ustawień przy uruchamianiu określonych aplikacji. Omówiono również metody rozwiązywania typowych problemów. Wykorzystując tę wiedzę, możesz zbudować bardziej komfortowe i efektywne cyfrowe miejsce pracy. Maksymalizuj potężne funkcje PowerShell, aby usprawnić swoje codzienne zadania.

Spis treści