Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/39: Рейтинг темы: голосов - 39, средняя оценка - 4.90
 Аватар для SergKr
67 / 41 / 3
Регистрация: 07.12.2010
Сообщений: 328

Программное отключение монитора

29.08.2012, 22:01. Показов 8250. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
А можно ли программно отключить монитор? Т.е. перевести его в режим пониженного потребления питания. Если можно - то как?
P.S. Windows как-то переводит - же...
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.08.2012, 22:01
Ответы с готовыми решениями:

Программное отключение монитора
Вечер добрый форумчане, давно уже решеткой не занимался, а тут в универе подкинули задачку, и последняя часть ее, вызывает проблемку. ...

Программное отключение функции
Добрый день! В книге EXCEL есть пользовательская функция: Function HasFormula(C As Range) As Boolean HasFormula = C.HasFormula End...

Отключение дисплея (программное)
Кто подскажет как отключить дисплей, а при нажатии любой кнопки или мыши, даже движении, затем монитор включался!? p.s. Естественно...

26
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,513
13.09.2019, 08:44
Студворк — интернет-сервис помощи студентам
Orlangur1991, Извиняюсь,сам нашел причину.Имя проекта было с ошибкой.
0
0 / 0 / 0
Регистрация: 08.11.2018
Сообщений: 3
10.02.2021, 19:54
Монитор отключает, но обратно программно включать не хочет - только если мышкой пошевелить, или кнопку ткнуть.. И через таймер пробовал, и сразу после выключения - никак. Вместо монитора у меня телевизор - но компу какая разница?
Задумано прикрутить ардуину: она меня увидела - включила монитор, нет меня - отключила.
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Public Class Form1
    <Runtime.InteropServices.DllImport("user32.dll", SetLastError:=True, CharSet:=Runtime.InteropServices.CharSet.Auto)> _
    Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function
    Private Const MONITOR_ON = -1&
    Private Const MONITOR_LOWPOWER = 1&
    Private Const MONITOR_OFF = 2&
    Private Const SC_MONITORPOWER = &HF170
    Private Const WM_SYSCOMMAND = &H112
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 2)
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1)
    End Sub
 
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1)
        End
    End Sub
End Class
0
3257 / 3270 / 556
Регистрация: 17.02.2019
Сообщений: 5,180
10.02.2021, 20:46
bmview, вот тема была Как отключить дисплей?. Взят кот от Orlangur
Попробуйте так
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<Runtime.InteropServices.DllImport("user32.dll", SetLastError:=True, CharSet:=Runtime.InteropServices.CharSet.Auto)> _
    Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function
    Private Const MONITOR_ON = -1&
    Private Const MONITOR_LOWPOWER = 1&
    Private Const MONITOR_OFF = 2&
    Private Const SC_MONITORPOWER = &HF170 '&
    Private Const WM_SYSCOMMAND = &H112
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF)
    End Sub
#End Region
 
    Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON)
    End Sub
0
0 / 0 / 0
Регистрация: 08.11.2018
Сообщений: 3
12.02.2021, 16:22
Пробовал и так и этак.. в общем выяснилось что на семерке монитор выключается и включается, а на десятке включение не работает, хотя выключение отрабатывает нормально. Пробовал на работе на нескольких машинах.
0
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
12.02.2021, 19:39
bmview,
Цитата Сообщение от bmview Посмотреть сообщение
только если мышкой пошевелить
ну так этим и воспользуйтесь
VB.NET
1
2
3
4
  <DllImport("user32.dll")>
    Shared Sub mouse_event(ByVal dwFlags As Int32, ByVal dx As Int32, ByVal dy As Int32, ByVal dwData As Int32, ByVal dwExtraInfo As UIntPtr)
    End Sub
    Private Const MOUSEEVENTF_MOVE As Integer = &H1
VB.NET
1
 mouse_event(MOUSEEVENTF_MOVE, 0, 1, 0, UIntPtr.Zero)
0
0 / 0 / 0
Регистрация: 08.11.2018
Сообщений: 3
13.02.2021, 19:41
На десятке эффекта ноль - экран тухнет, но обратно не оживает пока мышью/клавой не клацнешь. Вбнет 2008 экспресс, если это важно. End в конце поставил для уверенности что таймер сработал.
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Public Class Form1
    <Runtime.InteropServices.DllImport("user32.dll", SetLastError:=True, CharSet:=Runtime.InteropServices.CharSet.Auto)> _
    Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function
 
    Sub mouse_event(ByVal dwFlags As Int32, ByVal dx As Int32, ByVal dy As Int32, ByVal dwData As Int32, ByVal dwExtraInfo As UIntPtr)
    End Sub
 
    Private Const MONITOR_ON = -1&
    Private Const MONITOR_LOWPOWER = 1&
    Private Const MONITOR_OFF = 2&
    Private Const SC_MONITORPOWER = &HF170
    Private Const WM_SYSCOMMAND = &H112
 
    Const MOUSEEVENTF_MOVE As Integer = &H1
    Const MOUSEEVENTF_LEFTDOWN = &H2
    Const MOUSEEVENTF_LEFTUP = &H4
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 2)
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1)
    End Sub
 
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        SendMessage(Me.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1)
        mouse_event(MOUSEEVENTF_MOVE, 0, 1, 0, UIntPtr.Zero)
        mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 1, 0, UIntPtr.Zero)
        mouse_event(MOUSEEVENTF_LEFTUP, 0, 1, 0, UIntPtr.Zero)
        End
    End Sub
End Class
0
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
14.02.2021, 14:30
bmview, на десятке проверял, всё работает
Цитата Сообщение от bmview Посмотреть сообщение
поставил для уверенности что таймер сработал
Сработал?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.02.2021, 14:30
Помогаю со студенческими работами здесь

Программное отключение мыши
Может кто подкинет идею, как программно отключить мышь. BlockInput не подходит, поскольку он блокирует и клаву. А она мне нужна для...

Программное отключение интернета
Всем привет, интересует такой вопрос: Можно кликами мышки выключать интернет в &quot;Центре ...&quot;, в настройках адаптера кнопка...

Программное отключение\включение ADSL
Здравствуйте, есть ли у кого соображение по поводу, как программно отключить\включить ADSL интернет?

Программное отключение Private Sub Workbook_Open()
Takoi vopros - u menja kniga. Kak sdelatj programmno otklju4enie Private SUB??

Программное отключение батареи на ноутбуке
Доброго времени суток! Начал замечать что при примерно одинаковой нагрузке, батарея на ноуте стала розряжаться быстрее. Постоянно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru