<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Неофициальный форум DLNA Home Media Server &mdash; Отключение ПК при бездействии сервера]]></title>
	<link rel="self" href="https://hms.lostcut.net/extern.php?action=feed&amp;tid=571&amp;type=atom" />
	<updated>2022-10-29T07:57:02Z</updated>
	<generator>PunBB</generator>
	<id>https://hms.lostcut.net/viewtopic.php?id=571</id>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=18131#p18131" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>chuzhba пишет:</cite><blockquote><br /><p>где такую галку вообще поставить!?</p></blockquote></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p><span class="postimg"><img src="https://hms.lostcut.net/misc.php?action=pun_attachment&amp;item=4538" alt="https://hms.lostcut.net/misc.php?action=pun_attachment&amp;amp;item=4538" /></span></p></div></div>]]></content>
			<author>
				<name><![CDATA[d1mas]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=147</uri>
			</author>
			<updated>2022-10-29T07:57:02Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=18131#p18131</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=18130#p18130" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>makex пишет:</cite><blockquote><p>Если в настройках поставить галку чтоб сервер препятствовал переходу в спящий режим, то комп не усыпает никогда!</p></blockquote></div><br /><p>где такую галку вообще поставить!?</p>]]></content>
			<author>
				<name><![CDATA[chuzhba]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=2493</uri>
			</author>
			<updated>2022-10-28T11:45:23Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=18130#p18130</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13644#p13644" />
			<content type="html"><![CDATA[<p>Нашел еще одно решение.</p><p>Есть такая замечательная программка-автоматизатор - <strong>AutoIt</strong> <a href="https://www.autoitscript.com">https://www.autoitscript.com</a></p><p>Идея в том, чтобы отказаться от запуска bat файлов, а использовать указанную программку для &quot;интеллектуального&quot; выключения компьютера.</p><p>Сценарий такой:</p><p>1. В HMS делаем две обработки. Обе они пишут в <strong>один и тот же файл</strong>.<br />1.1 Одна при бездействии сервера 30 мин пишет например так:<br /></p><div class="codebox"><pre><code>//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
{
  HmsStringToFile(&#039;hms.idle&#039;, &#039;D:\\filename.txt&#039;); // ключевое тут hms.idle
}</code></pre></div><p>1.2 Вторая при запросе на воспроизведение. Она как бы сбрасывает признак бездействия HMS<br /></p><div class="codebox"><pre><code>//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
{
  HmsStringToFile(&#039;&#039;, &#039;D:\\filename.txt&#039;); // ключевое слово тут не важно, главное не должно быть hms.idle
}</code></pre></div><p>2. Для AutoIt пишем такой скрипт:<br /></p><div class="codebox"><pre><code>#include &lt;FileConstants.au3&gt;
#include &lt;MsgBoxConstants.au3&gt;
#include &lt;WinAPIFiles.au3&gt;
; Коды для вызова команды shutdown. Можно использовать в комбинации, т.е. суммируя:
;    $SD_LOGOFF (0) = Logoff
;    $SD_SHUTDOWN (1) = Shutdown
;    $SD_REBOOT (2) = Reboot
;    $SD_FORCE (4) = Force
;    $SD_POWERDOWN (8) = Power down
;    $SD_FORCEHUNG (16) = Force if hung
;    $SD_STANDBY (32) = Standby
;    $SD_HIBERNATE (64) = Hibernate

CheckHMSState()

Func CheckHMSState()
   ; Заполнить две константы ниже
   Local Const $sFilePath = &quot;c:\temp\HMS.STATE&quot;    ; полный путь к файлу, в котором хранится состояние HMS
   Local Const $sIDLE = &quot;hms.idle&quot;                ; строка-триггер - HMS 30 минут бездействует

   Local $hFileOpen = FileOpen($sFilePath, $FO_READ)
   if $hFileOpen = -1 Then
      ; Не удалось открыть файл. Просто завершаем приложение
      Return False
   EndIf
   Local $sFileRead = FileReadLine($hFileOpen, 1)
   if $sFileRead = 1 Then
      ; Не удалось прочитать из файла. Просто завершаем приложение
      Return False
   EndIf
   FileClose($hFileOpen)

   if StringInStr($sFileRead, $sIDLE, $STR_NOCASESENSE) Then
      Local $iDelete = FileDelete($sFilePath)                ; Подчищаем
      ;Shutdown (64)                                         ; Раскомментировать для выключения компьютера
      MsgBox($MB_SYSTEMMODAL, &quot;TEST&quot;, &quot;Ready to shutdown&quot;)    ; Для тестирования. Закомментировать впоследствии
   EndIf

EndFunc</code></pre></div><p>Задаем в нем константы, аналогично тем, что используются в обработках HMS, а именно путь к файлу с состоянием HMS и слово-триггер.<br />Ну и раскомментируем строку Shutdown(код). Описание кодов в скрипте.<br />3.Средствами AutoIt компилируем скрипт в исполняемый exe файл (можно даже для х64 систем).<br />4. Вызываем этот скомпилированный экзешник в планировщике задач Windows в соответствии с настройками, любезно описанными <strong>unq</strong>:<br />Trigger: on Idle, repeat every 30 minutes for duration of Indefinitely<br />Action: start program &quot;путь к исполняемому файлу, полученному на шаге 3&quot;<br />Condition: Start the task only if the computer idel for 1hour, wait for idle for: do not wait<br />stop if the computer ceases to be idle</p><p>Все.<br />Никаких окон не появляется. Никаких батников не запускается. Все делается штатными средствами HMS. А уже при бездействии компьютера запускается этот экзешник, проверяет содержимое файла и в зависимости от его содержимого либо завершает работу, либо выключает компьютер.</p><p>P.S. Вообще программуля очень крутая. Не исключаю, что её можно научить отслеживать состояние HMS (чтобы не тратить обработки). Но на скорую руку вполне и так.</p><p>P.S.1 Добавил в скрипт строку с удалением файла-состояния и сам скрипт во архиве.</p>]]></content>
			<author>
				<name><![CDATA[d1mas]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=147</uri>
			</author>
			<updated>2018-12-26T20:31:14Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13644#p13644</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13637#p13637" />
			<content type="html"><![CDATA[<p>Перепробовал разные сервера, они тоже уходят в сон при работе. Я кидаю на телек без транскодирования, может поэтому он не чувствует работу?<br />остановился на Serviio, к нему есть вот такая отдельная программка <a href="http://forum.serviio.org/viewtopic.php?f=17&amp;t=12136">http://forum.serviio.org/viewtopic.php?f=17&amp;t=12136</a> , для HMS бы подобную надстроечку, кто написал бы...)</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-12-24T14:49:30Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13637#p13637</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13631#p13631" />
			<content type="html"><![CDATA[<p>Да примерно это я и хотел как итог увидеть, но я не программист и даже задачу сформулировать не смог.</p><p>HMS, ведь знает что дает поток <span class="postimg"><img src="https://cdn1.savepice.ru/uploads/2018/12/23/eb08601693944b5b045e72d937c93c5a-full.png" alt="https://cdn1.savepice.ru/uploads/2018/12/23/eb08601693944b5b045e72d937c93c5a-full.png" /></span><br />вот пока он есть и не вырубался бы комп, держал. нет потока и стандартный бы виндовс отслеживал простой</p><p>Надо чтоб HMS держал комп пока есть активное соединение, всего делов то)))</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-12-23T09:24:33Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13631#p13631</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13630#p13630" />
			<content type="html"><![CDATA[<p>Пришел в голову еще один вариант. Идея сырая, но, имхо, с перспективами.</p><p>Отойти от схемы windows idle - HMS-событие при бездействии сервера 30 мин.</p><p>Взять на вооружение powershell.<br />Слепить cmdlet, который будет запускаться только при активном состоянии idle компьютера. Это не такая тривиальная задача, как оказалось судя по выдаче гугла, но думаю вполне решаемая.<br />Добиться четкого выполнения cmdlet&#039;а.<br />А в самом скрипте проверять состояние HMS, ну например на предмет наличия/отсутствия активных сессий. В состоянии IDLE HMS должен только слушать TCP порты.</p><p>Например выдача netstat: netstat -o -a -n | findstr &quot;7660&quot;, где 7660 PID процесса HMS</p><div class="codebox"><pre><code> Proto   SRC IP                 DST IP                 STATE           PID
  TCP    192.168.1.10:45397     0.0.0.0:0              LISTENING       7660
  TCP    192.168.1.10:45397     192.168.1.15:54316     CLOSE_WAIT      7660
  TCP    192.168.1.10:45397     192.168.1.15:54352     CLOSE_WAIT      7660
  TCP    192.168.1.10:45397     192.168.1.15:54359     ESTABLISHED     7660
  UDP    192.168.1.10:1900      *:*                                    7660</code></pre></div><p>Вот отсутствие адресов в столбце &quot;DST IP&quot;, или наличие соединений только в состоянии LISTENING можно считать за &quot;простой&quot; HMS.</p><p>Ну и выключать комп стандартными средствами powershell.</p><p>Таким образов городить огород с кучей промежуточных батников не потребуется.</p>]]></content>
			<author>
				<name><![CDATA[d1mas]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=147</uri>
			</author>
			<updated>2018-12-23T09:12:58Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13630#p13630</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13629#p13629" />
			<content type="html"><![CDATA[<p>работает, но все равно как-то костляво. часто выскакивает окно cmd, буквально не секунду, что немного напрягает... задача, как понимаю запускается много раз и отрабатывает скрипт поиска файла. <br />придется, наверно отказываться от HMS((( к сожалению..((<br />кажалось бы простой и нужный функционал, а не реализован... жаль...</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-12-23T04:57:19Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13629#p13629</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=13113#p13113" />
			<content type="html"><![CDATA[<p>я сделал так:<br />скрипт &quot;HMS30minIdle&quot; установил для события &quot;бездействие сервера&quot;<br /></p><div class="codebox"><pre><code>{
  HmsStringToFile(&quot;&quot;, &quot;D:\\CACHES\\HMS\\HMS30minIdle.txt&quot;);
}</code></pre></div><p>скрипт HMS30minIdleDelete установил для события &quot;после начала воспроизведения медиаресурса&quot;<br /></p><div class="codebox"><pre><code>bool ExecuteCmd(string sCmd) {
  bool bSuccess = false; variant objShell;
  try { 
    objShell = CreateOleObject(&quot;WScript.Shell&quot;); 
    objShell.Run(sCmd);
    bSuccess = true;
  } except {
    if (VarType(objShell) != varDispatch)
      ShowMessage(&quot;Невозможно создать ActiveXObject WScript.Shell для запуска выключения компьютера.&quot;);
    else
      ShowMessage(&quot;Ошибка запуска команды &quot;+sCmd);
  }
  return bSuccess;
}

{
  ExecuteCmd(&quot;D:\\CACHES\\HMS\\HMSdel30minidlefile.bat&quot;);
}</code></pre></div><p>два бат-файла:<br />HMSdel30minidlefile.bat<br /></p><div class="codebox"><pre><code>del &quot;D:\CACHES\HMS\HMS30minIdle.txt&quot; /s /f /q</code></pre></div><p>HMSSleep.bat<br /></p><div class="codebox"><pre><code>if exist D:\CACHES\HMS\HMS30minIdle.txt (
del &quot;D:\CACHES\HMS\HMS30minIdle.txt&quot; /s /f /q
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
)</code></pre></div><p>ну и собственно TaskSchedule:<br />Trigger: on Idle, repeat every 30 minutes for duration of Indefinitely<br />Action: start program D:\CACHES\HMS\HMSSleep.bat<br />Condition: Start the task only if the computer idel for 1hour, wait for idle for: do not wait<br />stop if the computer ceases to be idle</p><p>у меня гибернация выключена. но если у вас включена, то батник HMSSleep.bat надо сделать таким.<br /></p><div class="codebox"><pre><code>if exist D:\CACHES\HMS\HMS30minIdle.txt (
del &quot;D:\CACHES\HMS\HMS30minIdle.txt&quot; /s /f /q
powercfg -hibernate off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
powercfg -hibernate on
)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[unq]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=996</uri>
			</author>
			<updated>2018-10-08T22:40:51Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=13113#p13113</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12881#p12881" />
			<content type="html"><![CDATA[<p>Немного подправил в планировщике Запуск при простое 30 мин скрипта FindHMS.idle.cmd.<br />Поставил поставил Запуск при простое 30 минут и перезапуск задачи каждые 10 минут.<br />Таким образом получается, что если простой был 30 минут и в это время ХМС работал, то при остановке работы ХМС, по событию ХМС создастся файлик, а планировщик уже отработал свое время и задачу.<br />Я, наверное, больше для себя все это пишу, чтобы самому разобраться в этих событиях. Но сейчас мне нравится как работает!)<br />Странно что из коробки такой функции нет((<br />Всем спасибо!</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-09-25T18:30:32Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12881#p12881</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12876#p12876" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
{
  HmsStringToFile(&#039;&#039;, &#039;D:\\filename.txt&#039;);
}</code></pre></div><p>Все четко работает)) от одного батника можно избавиться))</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-09-24T17:46:25Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12876#p12876</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12874#p12874" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>WendyH</p></blockquote></div><p>спасибо)) но я уже тут наваял чего-то)))<br />если кто-то адаптирует, буду признателен))<br />тааак, но код попробую для собственного развития</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-09-24T17:41:00Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12874#p12874</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12873#p12873" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>makex пишет:</cite><blockquote><p>пользуюсь скриптом выше, там командная строка, но как создать файл чтоб команда была в одну строку, не могу придумать...</p></blockquote></div><p>Если пользуетесь скриптом выше, то создавать файл через командную строку не обязательно (скорее всего она у вас срабатывает, но т.к. текущий каталог может быть системным, то там ему отказано из-за нехватки прав или он создаётся, да не там, где вы ожидаете).<br />Проще в том скрипте выше, вместо вызова функции ExecuteCmd просто написать команду создания файла по жесткому пути:<br /></p><div class="codebox"><pre><code>///////////////////////////////////////////////////////////////////////////////
//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
{
  HmsStringToFile(&#039;&#039;, &#039;D:\\filename.txt&#039;);
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[WendyH]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=2</uri>
			</author>
			<updated>2018-09-24T17:28:03Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12873#p12873</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12870#p12870" />
			<content type="html"><![CDATA[<p>как посмотрю, вариантов у меня не много))<br />пользуюсь скриптом выше, там командная строка, но как создать файл чтоб команда была в одну строку, не могу придумать...<br />лаадно снова поискал и нашел как создать файл в строке)) команда <br /></p><div class="codebox"><pre><code>copy NUL filename.txt</code></pre></div><p>теперь буду пробовать...<br />ТАААК, вот что вышло )) костляво, но все таки)<br />создал 3 файла CMD <br />CreateHMS.idle.cmd </p><div class="codebox"><pre><code>copy NUL D:\Documents\HMS\hms.idle&quot;</code></pre></div><p>FindHMS.idle.cmd </p><div class="codebox"><pre><code>if exist D:\Documents\HMS\hms.idle rundll32 powrprof.dll,SetSuspendState Standby</code></pre></div><p>DelHMS.idle.cmd del </p><div class="codebox"><pre><code>D:\Documents\HMS\hms.idle</code></pre></div><p>В ХМС создал скрипт &quot;создать файл&quot;, за основу взят скрипт выше, который запускается, при событии простоя сервера 30 минут<br /></p><div class="codebox"><pre><code>///////////////////////////////////////////////////////////////////////////////
// Функция запуска указанной команды на выполнение
bool ExecuteCmd(string sCmd) {
  bool bSuccess = false; variant objShell;
  try { 
    objShell = CreateOleObject(&quot;WScript.Shell&quot;); 
    objShell.Run(sCmd);
    bSuccess = true;
  } except {
    if (VarType(objShell) != varDispatch)
      ShowMessage(&quot;Невозможно создать ActiveXObject WScript.Shell для запуска выключения компьютера.&quot;);
    else
      ShowMessage(&quot;Ошибка запуска команды &quot;+sCmd);
  }
  return bSuccess;
}

///////////////////////////////////////////////////////////////////////////////
//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
///////////////////////////////////////////////////////////////////////////////
{
  ExecuteCmd(&quot;D:\\Documents\\HMS\\CreateHMS.idle.cmd&quot;); // Выполнение скрипта создания файла
}</code></pre></div><p>в планировщике Windows была создана задача: HMS<br />Триггер - при простое<br />Действие - запустить D:\Documents\HMS\FindHMS.idle.cmd<br />Условие - при простое 30 минут<br />ОК<br />создаю еще одну задачу HMS_del<br />Триггер - при событии - настраиваемое - По журналу - Журнал Windows - Система - Источник событий - Power-Troubleshootter - Код событий - 1,300<br />Действие - запустить D:\Documents\HMS\DelHMS.idle.cmd<br />ОК</p><p>в ручном режиме позапускал задачи, создают, находят и удаляют файл. Надеюсь и автоматизация пройдет удачно. Сегодня вечер-ночь покажет)))</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-09-24T16:23:33Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12870#p12870</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12843#p12843" />
			<content type="html"><![CDATA[<p>Можно пойти от обратного. Проверять бездействие компьютера штатными средствами ОС.<br />Вот описание: <a href="https://docs.microsoft.com/en-us/windows/desktop/taskschd/task-idle-conditions">https://docs.microsoft.com/en-us/window … conditions</a><br />Т.е. в планировщике задач создать триггер, который будет срабатывать при переходе компьютера в состояние бездействия, и при этом проверять - есть ли запущенные задачи у HMS. Вот как HMS чекать внешним скриптом - сходу не скажу. Самое простое и костыльное решение такое:<br />1. В HMS по скрипту при бездействии создавать во временной папке какой-нибудь файлик, ну например &quot;.idle&quot;<br />2. В планировщике задач Windows создать триггер, срабатывающий при переходе компьютера в состояние бездействия и запускать батник, который проверяет наличие в папке файла, упомянутого в п. 1.</p><p>Если файла нет - ничего не делать.<br />Если файл есть - выключать компьютер.</p>]]></content>
			<author>
				<name><![CDATA[d1mas]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=147</uri>
			</author>
			<updated>2018-09-17T10:55:00Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12843#p12843</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отключение ПК при бездействии сервера]]></title>
			<link rel="alternate" href="https://hms.lostcut.net/viewtopic.php?pid=12841#p12841" />
			<content type="html"><![CDATA[<p>Когда за ним никто и ничто не работает в течении 30 минут.<br />я использовал скрипт взятый из соседней темы:<br /></p><div class="codebox"><pre><code>///////////////////////////////////////////////////////////////////////////////
// Функция запуска указанной команды на выполнение
bool ExecuteCmd(string sCmd) {
  bool bSuccess = false; variant objShell;
  try { 
    objShell = CreateOleObject(&quot;WScript.Shell&quot;); 
    objShell.Run(sCmd);
    bSuccess = true;
  } except {
    if (VarType(objShell) != varDispatch)
      ShowMessage(&quot;Невозможно создать ActiveXObject WScript.Shell для запуска выключения компьютера.&quot;);
    else
      ShowMessage(&quot;Ошибка запуска команды &quot;+sCmd);
  }
  return bSuccess;
}

///////////////////////////////////////////////////////////////////////////////
//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
///////////////////////////////////////////////////////////////////////////////
{
  ExecuteCmd(&quot;rundll32 powrprof.dll,SetSuspendState Standby&quot;); // Выполнение команды выключения компьютера
//  ExecuteCmd(&quot;Rundll32.exe powrprof.dll,SetSuspendState Sleep&quot;); // Выполнение команды выключения компьютера
}</code></pre></div><p>если поставить его на событие о бездействии сервера 30 мин, то он вырубит комп даже если я работаю за ним</p><p>Я думаю надо его как-то связать с виндовским таймером<br /><a href="https://docs.microsoft.com/ru-ru/windows/desktop/api/winbase/nf-winbase-setthreadexecutionstate">https://docs.microsoft.com/ru-ru/window … utionstate</a><br />к сожалению я не программист)) ((</p>]]></content>
			<author>
				<name><![CDATA[makex]]></name>
				<uri>https://hms.lostcut.net/profile.php?id=1390</uri>
			</author>
			<updated>2018-09-16T19:13:11Z</updated>
			<id>https://hms.lostcut.net/viewtopic.php?pid=12841#p12841</id>
		</entry>
</feed>
