Muszę ustawić (domyślną) rozdzielczość ekranu na Win Server 2012 hostowany w VMWare vcentrum 5.5.0. Jest to serwer dedykowany do przeprowadzania automatycznych testów GUI dla aplikacji Windows przez Jenkins. Po połączeniu z Jenkins ma rozdzielczość ekranu 1024x768. Potrzebuję wyższej, co najmniej 1024px wysokości.
Co próbowałem do tej pory:
Uruchom setres.exe z Jenkins
c:\windows\system32\setres.exe -w 1280 -h 1024
wynik: przekazanych ustawień nie można zastosować do urządzenia graficznego.
Dodaj następujące wiersze do pliku vmx
svga.autodetect = "FALSE"
svga.vramSize = "20971520"
svga.maxWidth = "1920"
svga.maxHeight = "1080"
wynik: setres.exe -i nadal zwraca 1024x768
Użyj funkcji Win API: ChangeDisplaySettings , EnumDisplaySettings
Napisałem narzędzie C #, które działało poprawnie na WS2003 (uruchamiany z Jenkins) i Win7 (uruchamiany lokalnie), ale na WS2012 uruchamiany z Jenkins EnumDisplaySettings zwraca:
Supported Modes:
1024 by 768, 32 bit, 60 hertz
1280 by 1024, 32 bit, 60 hertz
1920 by 1080, 32 bit, 60 hertz
...shortened
Jednak funkcja ChangeDisplaySettings powraca
-1 : dislplay change failed
Zmień rejestr:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{A8405CA4-B9D8-4123-B809-D912D3B666DC}\0000
wynik: brak i po połączeniu Jenkins ustawia klucze VidPNSource0Width & Height z powrotem na 1024x768
Jakieś pomysły?
Edycja: ustawienia sprzętu VM
źródło
Odpowiedzi:
To powinno zapewnić szeroki zakres możliwych rozdzielczości
źródło
W ustawieniach klienta VM przejdź do karty graficznej „Lista wszystkich trybów”, wybierz tryb, kliknij OK i ponownie kliknij OK.
źródło
Wypróbuj MultiRes - być może uda się tam, gdzie zawodzi setres.
źródło