Как написать программу для выключения компьютера

Изучал я java, и подумал -(Сидишь такой в туалете с телефоном, а у тебя на пк кровь, убийства и голые сиськи открыты, вдруг приходит кто-то и говорит «Я за компьютером посижу чуток, ты же не против?») «а что если написать программу-сервер, которая выключала бы ПК, когда к этому к ней законектился пользователь». После этой мысли я узнал про такую штуку, как

runtime.getruntime().exec

И в общем я решил чего-то сделать:

/*программа ждет пока к порту 10000 кто-нибудь законектится, как только это произошло, начинается завершение сеанса*/ import java.io.IOException; import java.net.ServerSocket; public class Serv < public static void main(String[] args) throws IOException < ServerSocket serverSocket = new ServerSocket(10000); serverSocket.accept(); Process shutdown = Runtime.getRuntime().exec(new String[]); serverSocket.close(); > >

Это был самый простейший вариант.

За ним сразу последовала улучшенная версия(с отправкой html присоединившемуся клиенту):

Как создать кнопку для выключения компьютера на Рабочий стол


import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class Serv < public static void main(String[] args) throws IOException < int sPort = 9000; ServerSocket socket = new ServerSocket(sPort); Socket ss = socket.accept();//Ждём пока кто-нибудь подключится System.out.println(«CONNECTED»); OutputStream sout = ss.getOutputStream(); String html = «Shutdown

Компьютер выключится через 15-20 секунд!

Ему нужно отдыхать 🙂

«;//html //Я не мог не добавить картинку котика (^=◕ᴥ◕=^) String header = «HTTP/1.1 200 OKnContent-type: text/htmlnContent-Length: » + html.length() + «nConnection: closenn»;//html header String outputText = header + html; sout.write(outputText.getBytes()); String[] cm = < «shutdown», «-s» >; Runtime.getRuntime().exec(cm); ss.close(); socket.close(); > >
Потом я скомпилировал сей код в jar:

image

image

image

image

После её запуска ничего особенного не произойдет, но теперь если вы подключитесь к порту 9000 вашего компьютера(у меня это 192.186.1.2:9000) на любом другом устройстве подключенном к тому же wi-fi — ваш компьютер начнет завершение работы.

image

Включение и выключение компьютера по расписанию | TimePC, Планировщик заданий, BIOS


image

После этого можно добавить её в автозапуск и спокойно пользоваться в пределах wi-fi…

Но я решил еще немного поднажать, и сделать доступ к девятитысячному порту с любой точки мира (но это не точно):

Открываем настройки роутера, находим там что-то похожее того, что на пикче и вписываем туда ваши данные:

image

Затем узнаем внешний ip (2ip.ru в помощь), и подключаемся к нему через указанный в настройках порт(xxx.xxx.xxx.xxx:15 например).

P.S.: Так как внутренний айпи компьютера может меняться(в зависимости от количества подключенных к wi-fi устройств), можно создать маппинг сразу для несколько внутренних адресов(192.168.1.2, 192.168.1.3, 192.168.1.4 например).

Вот собственно и всё.

P.P.S.: Если кому нужна данная программа -> google.drive

  • Ненормальное программирование
  • Java

Источник: habr.com

Пишем программу выключения компьютера на C#

Сегодня напишем программу выключения компьютера на C#.

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

Эта разработка будет перекликаться с программой «Будильник», которую мы недавно программировали.

Внешний вид будет такой:

Программа выключения компьютера на C#

Приступим к созданию интерфейса.

Открываем Visual Studio. Создаём новый проект «Приложение Windows Forms (.NET Framework)». Зададим свойства для самой формы. Свойство Text: «Выключение компьютера», это название самой формы, которое мы видим в верху. Свойство Size: 800, 500. Это размеры нашего окна.

Свойство StartPosition: CenterScreen, чтобы программа запускалась по центру экрана. Свойство MaximizeBox: Fasle (запретим разворачивать окно на весь экран). Свойство FormBorderStyle: FixedSingle (запрещаем менять размеры формы).

Нажмём на панель инструментов. Выберем элемент Label и перенесём на форму. Изменим свойства — Text: «выключение произойдёт через», Font: размер на 16pt. После этого можно узнать размер этого компонента lable. Посмотрим свойство Size. Ширина получилась равна 425. Рассчитаем, чтобы вывеска программы раположилась посередине: (800 — 425) / 2 = 187.

Читайте также:
Продолжить установку nvidia невозможно эта программа установки не поддерживает вашу системную

Т.е. с левого края отступим 187 пикселей. Установим свойство Location: 187, 48.

Программа выключения компьютера на C# - вывеска

Перенеcём три элемента TextBox. Все элементы будут иметь одинаковые свойства, кроме Location. Font: шрифт в 16 pt, свойство — Size: 100, 38, свойство TextAlign: Center. Location: для textBox1 150; 152, для textBox2 350; 152, для textBox3 550; 152. Таким образом, элементы равномерно разместились в нашем окне.

Данные для локации всех элементов легко вычисляются, т.к. мы знаем их размеры и знаем размер окна.

Так же к каждому TextBox’у справа прикрепляем элементы Label. Пишем в каждом Label’e Ч, М, С соответственно.

Свойство Font у Label’ов: размер устанавливаем в 14pt. Совойство Text устанавливаем соответственно в Ч, М, С. Расположение можно установить вручную на одинаковой высоте и на одинковом расстоянии от TextBox’ов.

Программа выключения компьютера на C# - textbox-ы

Добавим на форму кнопку (элемент Button).

Для кнопки название (свойство Text): «Запустить». Размеры (Size): 200, 52. Расположение (Location): 300, 293.

Приступаем к программированию. Нажимаем F7 и переходим к коду.

В самом начале класса Form заводим переменные для каждого текстового поля соответственно.

Программа выключения компьютера на C# - заводим переменные

Автоматическое выключение компьютера. Пишем bat-файл

Команда для автоматического выключения компьютера или его перезагрузки

Автоматизация некоторых процессов на компьютере часто позволяет существенно увеличить удобство использования ПК не только в работе, но и в повседневной жизни. В одном из топиков мы, к примеру, рассматривали способы добавления любой программы в автозагрузку компьютера: Автозагрузка. Добавление приложений в автозагрузку Windows.

Данная статья будет посвящена такому моменту, как автоматическое выключение компьютера через заданный промежуток времени. Все манипуляции мы будем производить исключительно средствами самой системы Windows, без использование сторонних программ . Кроме того, не станем ограничиваться выполнением голых команд, а добавим всему процессу немного юзабилити.

Как выполнить shutdown для выключения и перезагрузки компьютера

Не будем срываться с места в карьер, начнём с самого начала. А начало — это основная команда для выключения компьютера, которую мы будем использовать. В ОС Windows для завершения работы достаточно передать системе команду shutdown с нужными параметрами.

В принципе, команду shutdown можно выполнять разными способами:

  • выполнить shutdown из командной строки Windows
    shutdown в командной строке Windows
  • вызвать команду shutdown из утилиты Выполнить в системе Windows
    shutdown в окне Выпонить Windows
  • отправить команду shutdown непосредственно из меню Пуск
    shutdown в меню Пуск Windows

Все три способа схожи, поддерживают одни и те же параметры, поэтому мы не будет заострять на этом внимание и весь процесс будем выполнять в консоли, то есть в командной строке системы Windows.

Как же это работает? Чтобы компьютер выключился автоматически , то есть без необходимости лезть в меню «Пуск» и нажимать там кнопку «Завершение работы», нам нужно вызвать следующую команду:

shutdown -s

Через 30 секунд после выполнения произойдёт завершение работы системы. Кроме этого той же командой, но с иным параметром можно не выключить компьютер, а перезагрузить его. Вот как это будет выглядеть:

shutdown -r

Опять же отметим, что остальные параметры для команды выключения и перезагрузки схожи, поэтому мы не будем повторять каждый набор дважды, а рассмотрим весь процесс автоматического выключения компьютера на примере команды shutdown -s, держа в уме, что всё то же самое применимо и к команде shutdown -r

А теперь приступим к усовершенствованию команды и добавлению к ней дополнительных параметров.

Параметры команды shutdown

Материал, описанный в статье, применим к большинству используемых на сегодняшний день версий операционной системы от компании Microsoft. Команды и способы их выполнения позволяют автоматически выключить компьютер на Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Vista и всё ещё сохраняющей своего верного пользователя Windows XP.

Читайте также:
Где в ubuntu установленные программы

Теперь рассмотрим основные параметры команды shutdown, которыми мы будем пользоваться:

  • -s основной параметр, который позволяет автоматически выключить компьютер ;
  • -r основной параметр, который позволяет автоматически перезагрузить компьютер ;
  • -a основной параметр, который позволяет отменить запланированное действие по выключению или перезагрузке компьютера ;
  • -t позволяет задать время задержки в секундах до выключения или перезагрузки компьютера. Возможно присвоение значения в диапазоне от 0 до 315360000 (10 лет). По умолчанию присваивается значение 30;
  • -f принудительное закрытие запущенных приложений без предупреждения пользователей. Не самый главный параметр, но бывает полезен, так как помогает избежать отмены выключения или перезагрузки компьютера из-за зависших программ.

Для целей знакомства со способом автоматического выключения компьютера этого нам будет достаточно. Ниже мы добавим к приведённому набору другие команды, чтобы сделать использование функции shutdown ещё удобнее.
Полный список параметров для shutdown можно увидеть, выполнив в консоли следующую команду:

shutdown /?

Список параметров команды shutdown в консоли Windows

Автоматическое выключение компьютера через определённое время

Итак, переходим к практическому применению информации, которую мы собрали в первых двух главах.

Допустим, мы смотрим фильм и понимаем, что можем уснуть, не выключив компьютер. Нам нужно, чтобы компьютер выключился сам через 30 минут. Для этого необходимо выполнить следующую команду (мы помним, что сделать это можно не только в командной строке, но также через утилиту Выполнить или в меню Пуск ):

shutdown -s -f -t 1800

Используемые параметры нам уже знакомы. А значение 1800 задаёт значение времени в секундах, через которое будет произведено завершение работы. То есть, 1800 секунд = 1800 секунд / 60 секунд в минуте = 30 минут. С этим проблем возникнуть не должно. После выполнения команды мы получим системное уведомление, о том, что запланировано завершение работы

Работа Windows будет завершена через 30 минут

Кроме того, за 10 минут до момента завершения работы вне зависимости от запланированной причины (выключение или перезагрузка) мы получим дополнительное предупреждение от системы Windows

Работа Windows будет завершена через 10 минут

Но как быть, если, допустим, спустя минут 15 мы понимаем, что фильм досмотреть не успеем и нужно отменить автоматическое выключение? Чтобы отказаться от запланированного завершения работы Windows , необходимо выполнить следующую команду:

shutdown -a

Сразу после выполнения команды высветится оповещение о том, что автоматическое выключение компьютера отменено

Выход из системы отменен. Запланированное завершение работы отменено

Это, собственно, всё, что нужно знать для автоматического выключения компьютера через заданное время. Но каждый раз вводить команду в консоль не очень удобно, поэтому ниже мы разберём, как написать бат-файл для автоматического выключения компьютера или его перезагрузки .

Батник для автоматического выключения компьютера

В статье Пакетные файлы (bat, батники) Windows мы подробно рассматривали основные правила создания бат-файлов и их синтаксис. Чтобы не повторяться лишний раз, в данной публикации будем описывать только те команды и параметры, которые будем применять для создания файлов, позволяющих запланировать автоматическое выключение компьютера.

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

echo off chcp 1251 echo Компьютер будет выключен через 10 минут shutdown -s -f -t 600 pause

  • echo off — скрывает вывод системных сообщений при выполнении процедуры;
  • chcp 1251 — задаёт кодировку для корректного отображения кириллицы;
  • echo — выводит сообщение в консоли о выключении;
  • shutdown -s -f -t 600 — задаёт время выключения — 600 секунд, то есть 10 минут;
  • pause — останавливает выполнение батника до нажатия любой кнопки клавиатуры.

Это очень легко, добавим функционала нашему bat-файлу. Для этого воспользуемся командой set, которая позволяет задавать пользовательские переменные. То есть, при запуске батника консоль будет спрашивать нас примерно следующее: «Через сколько секунд выключить компьютер?», а мы каждый раз можем вводить нужное значение и жать клавишу Enter . Вот как будет выглядеть код нашего батника:

echo off chcp 1251 set /p sec_off=»Выключить компьютер через: » echo Компьютер будет выключен через %sec_off% секунд shutdown -s -f -t %sec_off% pause

  • set /p sec_off= — задаём значение переменной sec_off;
  • echo — выводим в уведомление заданное значение секунд;
  • shutdown -s -f -t %sec_off% — выключаем компьютер спустя заданное в начале количество секунд.
Читайте также:
Программа для настройки tsc te200

Уже лучше, но можно усовершенствовать. Задавать время выключения в секундах не очень удобно. Мы будем использовать минуты (можно по аналогии настроить и часы). Однако, консоль Windows не поймёт нашего значения в минутах, поэтому для неё мы будем осуществлять перевод в секунды.
Вот как это будет выглядеть:

echo off chcp 1251 set /p min_off=»Выключить компьютер через (минут): » set /A sec_off=»%min_off% * 60″ echo Компьютер будет выключен через %min_off% минут shutdown -s -f -t %sec_off% pause

  • set /p min_off= задаём значение переменной min_off;
  • set /A sec_off= задаём значение переменной sec_off, умножая количество минут на 60, чтобы получить для консоли секунды;
  • echo — выводим в уведомлениях заданные минуты;
  • shutdown -s -f -t %sec_off% подставляем полученное значение в секундах.

В принципе, на этом можно остановиться. Готовые батники выключения, перезагрузки и отмены завершения работы с приведённым кодом можно скачать из прикреплённого к статье архива: auto-shutdown-reboot-bat.

Но можно ещё немного улучшить бат-файлы и сделать из трёх один, преобразовав его в крошечную программу. Этим и займёмся ниже.

Создаем программу для автоматического выключения компьютера

На данный момент мы имеем три батника , каждый из которых выполняет свою функцию: выключение компьютера, перезагрузку и отмену запланированных действий.
Для начала напишем основную часть нового единого bat-файла . Суть будет заключаться в том, чтобы спрашивать у пользователя, какое из трёх действий требуется выполнить, а потом уже переходить к той части, которая отвечает за нужную функцию.

Выбор функции зададим следующей строчкой (её, как и весь файл, можно отредактировать на своё усмотрение, как будет удобнее):

set /p answer=»выключить — 1, перезагрузить — 2, отменить — 0: »

Здесь мы задаём новую переменную answer , значение которой вводится при каждом запуске файла и подтверждается нажатием клавиши Enter .
Переход к нужной части бат-кода осуществляем командой goto, в данном случае строчка будет иметь следующий вид:

goto %answer%

Начало каждой независимой части ознаменуем, соответственно, как :1, :2 и :0
Для грамотного выполнения сделаем завершение каждой части кода не командой pause, а командой exit, добавив перед закрытием окна двухсекундную задержку:

TIMEOUT /T 2 exit

И в завершении добавим раскрашивание текста разным цветом, в зависимости от выполняемой команды:

color C

На выходе мы получим следующий код:

echo off chcp 1251 set /p answer=»выключить — 1, перезагрузить — 2, отменить — 0: » goto %answer% :1 set /p min_off=»Выключить компьютер через (минут): » set /A sec_off=»%min_off% * 60″ color C echo Компьютер будет выключен через %min_off% минут shutdown -s -f -t %sec_off% TIMEOUT /T 2 exit :2 set /p min_re=»Перезагрузить компьютер через (минут): » set /A sec_re=»%min_re% * 60″ color E echo Компьютер будет перезагружен через %min_re% минут shutdown -r -f -t %sec_re% TIMEOUT /T 2 exit :0 color A echo Запланированное завершение работы Windows отменено shutdown -a TIMEOUT /T 2 exit

Каждая команда уже описана выше. Вот, как это работает:

  1. Мы запускаем батник.
  2. В ответа на вопрос о выборе функции вводим 1, 2 или 0. , подтверждаем ввод клавишей Enter .
  3. Консоль перейдёт к соответствующей части кода и, если это выключение или перезагрузка, спросит, через сколько минут произвести требуемое действие.
  4. Потом введённое значение преобразуется в секунды и добавляется в команду, параметры которой и определяют запланированное действие.

Программа для автоматического выключения компьютера

Скачать готовый bat-файл для автоматического выключения компьютера можно из прикреплённого архива: auto-shutdown-bat.

Для удобства можно упаковать получившийся батник в SFX-архив и добавить к нему иконку. В итоге получится простая портативная программа для автоматического выключения и перезагрузки компьютера через заданный интервал времени: auto-shutdown-exe.

Источник: miradmin.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru