Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Изменить разрешение экрана - микро-версия (http://forum.oszone.net/showthread.php?t=343134)

SharkyEXE 01-12-2019 21:26 2898736

Изменить разрешение экрана - микро-версия
 
Всем здравствуйте.

1) Операционная система: Microsoft Windows 7 Professional Service Pack 1 x64
2) Контроль учетных записей: ВЫКЛючен

Пожалуйста, помогите, мне нужно
1) есть скрипт для смены разрешения экрана перейти
Код:

; Пример использования функции
_DisplaySetRes (1024, 768, 32, 75)

; Функция изменения видеорежима (для одного монитора)
Func _DisplaySetRes ($width, $height, $depth, $freq)
    Local $dev = DllStructCreate ("byte[32];int[10];byte[32];int[6]")
    ; Возвращаем текущее состояние устройства
    Local $ret = DLLCall ('user32.dll', 'int', 'EnumDisplaySettings', _
        'ptr' , 0, _
        'long', 0, _
        'ptr' , DllStructGetPtr ($dev) )
    If @error Then Return 0
    If $ret[0]=0 Then Return 0
    ; Правим нужные элементы структуры
    DllStructSetData ($dev, 4, $depth, 1)
    DllStructSetData ($dev, 4, $width, 2)
    DllStructSetData ($dev, 4, $height, 3)
    DllStructSetData ($dev, 4, $freq, 5)
    ; Проверяем корректность параметров
    $ret = DllCall ('user32.dll', 'int', 'ChangeDisplaySettings', _
        'ptr', DllStructGetPtr ($dev), _
        'int', 2 )
    If @error Then  Return 0
    ; Если все ОК - применяем новые параметры
    If $ret[0] =0 Then
        $ret = DllCall ('user32.dll', 'int', 'ChangeDisplaySettings', _
            'ptr', DllStructGetPtr ($dev), _
            'int', 1 )
        If @error Then  Return 0
        Return 1
    Else
        Return -1
    EndIf
EndFunc

2) имею желание использовать минимальное количество кода для смены разрешения экрана
3) пожалуйста, я очень прошу, из этого перейти сделайте минимальное количество кода, чтобы работало
4) или, может есть другое, красивое, решение для смены разрешения экрана, в одну строку

Пожалуйста, помогите

Спасибо.

bredych 09-12-2019 22:46 2899703

а все эти проверки обязательны?
Там же в начале пример в одну строку.
Или надо, чтоб код сам имел защиту от дурака, вводящего любые левые значения?

SharkyEXE 10-12-2019 08:19 2899740

bredych

Здравствуйте.

Пожалуйста, если можно, напишите код

Мне не нужны нкиакие проверки, ничего лишнего, чем меньше код, тем лучше, в одну строку - вообще красота

Я для себя делаю, никому больше не нужно это


Время: 05:49.

Время: 05:49.
© OSzone.net 2001-