Комментарии 34
Если мой следующий комментарий этой ночью не последует, значит оно работает :)
После перезапуска у меня (как и обычно) появился диалог «Вход в windows», где я ввожу пароль.
Ну, думаю — отпишусь, что нужно отключить пароль к учетной записи и диалог входа в систему, так пока набрал пол-коммента на Хабре, вдруг комп начал переходить в спящий режим =)
p.s.: Windows XP SP3, если что
Ну, думаю — отпишусь, что нужно отключить пароль к учетной записи и диалог входа в систему, так пока набрал пол-коммента на Хабре, вдруг комп начал переходить в спящий режим =)
p.s.: Windows XP SP3, если что
«2. Если есть пароль на вход (иногда необходим для Remote Desktop), то Win+R –>control userpasswords2 и там пишем пользователя по умолчанию.»
У меня тоже пароль стоит, поэтому я этот пункт и добавил.
Там галочку убираете, и вводите имя/пароль пользователя по умолчанию
И комп будет грузится без пароля. Но при входе с хибирнейта пароль запросит.
У меня тоже пароль стоит, поэтому я этот пункт и добавил.
Там галочку убираете, и вводите имя/пароль пользователя по умолчанию
И комп будет грузится без пароля. Но при входе с хибирнейта пароль запросит.
А за саму идею респект!
Очень интересно, можно ли как-то реализовать примерно такой же скрипт, только чтобы винда переходила в hibernate до авторизации пользователя. Или это бессмысленно? :)
И если это возможно — быстрее ли это обычной загрузки? (я же так понимаю все дополнительные службы и программы с авторана обязательно грузятся после авторизации, или есть какая-то возможность подгружать что-то раньше, если к примеру программа установлена «для всех пользователей»?)
Очень интересно, можно ли как-то реализовать примерно такой же скрипт, только чтобы винда переходила в hibernate до авторизации пользователя. Или это бессмысленно? :)
И если это возможно — быстрее ли это обычной загрузки? (я же так понимаю все дополнительные службы и программы с авторана обязательно грузятся после авторизации, или есть какая-то возможность подгружать что-то раньше, если к примеру программа установлена «для всех пользователей»?)
А как бы еще научить различать обычный рестарт с таким «выключением». Создавать отдельный ярлык для перезагрузки, который сначала будет удалять гибернацию, перезагружать, а затем восстанавливать? Муторно.
Попробую программку накидать на тему.
Попробую программку накидать на тему.
Так после создания записи о хибернации, скрипт сразу перезагружает машину. Так что описанная вами ситуация мало вероятна. Или я что то непонял. Просто скрипт было первым что пришло в голову.
Данный скрипт добавляет переход в гибернацию только при следующей перезагрузке (секция \RunOnce\), все последующие перезагрузки будут проходить в обычном режиме.
Непонятно, зачем столько усилий, если можно просто использовать hibernate по-назначению, при этом не перезагружая систему вообще.
на работе так и делаю, однако через какоето время глючит жутко, что думаешь, может стоит всетаки выключать\включать, а во время включения просто ходить за кофе
нужно теперь только понимать, что время выключения выросло на время включения.
для обычного пк это не актуально, для ноута актуально сколько времени комп выключается, т.к. только после выключения можно поотрубать девайсы, бросить в чехол и бежать на работу, на которую и так опаздываешь.
для обычного пк это не актуально, для ноута актуально сколько времени комп выключается, т.к. только после выключения можно поотрубать девайсы, бросить в чехол и бежать на работу, на которую и так опаздываешь.
а какие девайсы надо отключають от ноута только после отключения?
внешний жесткий диск
Это какое-то заблуждение, оставшееся со времен PS/2 мышей и клавиатур?
надеюсь речь идёт о каком-нить есата диске? иначе я не понимаю. про юсб уже сказали.
3. Создаем файлик shutdown.js ...А там не должно быть случайно shutdown.vbs?
Не должно быть.
Windows Scripting Host одинаково работает и с тем, и с другим.
Windows Scripting Host одинаково работает и с тем, и с другим.
Ага, так и есть ;)
Только вот под вистой скрипт не пошел сразу. Немного подправил:
Только вот под вистой скрипт не пошел сразу. Немного подправил:
set WshShell = WScript.CreateObject("WScript.Shell")
WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce\Hibernate", "rundll32.exe PowrProf.dll,SetSuspendState"
WSHShell.Run("shutdown -r -t 0")
* This source code was highlighted with Source Code Highlighter.
Спасибо за топик, действительно очень полезная вещь!
Идея интересная, только вот на XP с обьемом оперативки больше 4ГБ hybernate не работает (
Вот в этом топике: (http://www.velocityreviews.com/forums/t523486-xp-x64-pro-hibernation-issue.html)
Написано как включить потеряную оперативку.
Там есть линк на хотфикс от MS, на сточку, которую нужно вписать в BOOT.IINI, и на опиции в биосе, которые надо включить.
Подчеркиваю: если материнка не умеет аппаратный ремаппинг (у меня, например, умеет), то после этого доступными станут только 3Гб оперативки вместо четырех.
Последний гигабайт легко возвращается стиранием строчки из boot.ini, но тогда естественно что хибернейт снова исчезает.
На Vista x64 эта «проблема» решена, и хибернейт работает большими объемами оперативки. В Windows 7 не смотрел еще, но имхо рещается так же как в Висте.
Написано как включить потеряную оперативку.
Там есть линк на хотфикс от MS, на сточку, которую нужно вписать в BOOT.IINI, и на опиции в биосе, которые надо включить.
Подчеркиваю: если материнка не умеет аппаратный ремаппинг (у меня, например, умеет), то после этого доступными станут только 3Гб оперативки вместо четырех.
Последний гигабайт легко возвращается стиранием строчки из boot.ini, но тогда естественно что хибернейт снова исчезает.
На Vista x64 эта «проблема» решена, и хибернейт работает большими объемами оперативки. В Windows 7 не смотрел еще, но имхо рещается так же как в Висте.
Насколько я понимаю, этот способ не подойдет в дуал-бутной конфигурации, например Windows/Linux
Например, вы «выключаете» компьютер, и перезагружаетесь в Линуксе. Работаете, создаете/удаляете/перемещаете файлы на жестком диске.
Потом загружаетесь в линукс… И все ваши файлы исчезают!!!
Я предполагаю, что так происходит потому что таблица файлов держится в памяти в момент хибернейта, и не загружается заново до перезагрузки.
То есть сразу после загрузки Windows ее нужно будет быстро-быстро-быстро перезагрузить, пока она не успела обратиться сделать изменения в файловой сисстеме затереть важные файлы.
Но и даже этот вариант не всегда проходит… Так что в конце концов файлы найти можно, но только полным сканированием жесткого диска с распознаканием, как например в программе @ctive Recovery
Например, вы «выключаете» компьютер, и перезагружаетесь в Линуксе. Работаете, создаете/удаляете/перемещаете файлы на жестком диске.
Потом загружаетесь в линукс… И все ваши файлы исчезают!!!
Я предполагаю, что так происходит потому что таблица файлов держится в памяти в момент хибернейта, и не загружается заново до перезагрузки.
То есть сразу после загрузки Windows ее нужно будет быстро-быстро-быстро перезагрузить, пока она не успела обратиться сделать изменения в файловой сисстеме затереть важные файлы.
Но и даже этот вариант не всегда проходит… Так что в конце концов файлы найти можно, но только полным сканированием жесткого диска с распознаканием, как например в программе @ctive Recovery
Спасибо за статью — теперь утро на работе начинается более приятно )
У меня небольшой вопрос: а можно ли так сделать так, что бы hybernate наступал через определенное время 30 или 60 секунд? Ведь некоторый программы (такие как Outlook) не успевают полностью прогрузится.
У меня небольшой вопрос: а можно ли так сделать так, что бы hybernate наступал через определенное время 30 или 60 секунд? Ведь некоторый программы (такие как Outlook) не успевают полностью прогрузится.
У меня получилось реализовать это с помощью программки sleep, которая входит в состав Windows Server 2003 Resource Kit Tools.
Команду перехода в спящий режим заменил на исполняемый файл:
А в этом файле прописал следующее:
Первая строка делает log off (так на всякий случай, что бы кто-то не прервал выполнения cmd), далее задержка в 200 секунд (для моей машины это значение оказалось оптимальным) и собственно переход в спящий режим.
Теперь в планах попытаться реализовать одноразовый безпарольный вход в систему для данного случая.
Команду перехода в спящий режим заменил на исполняемый файл:
var WSHShell = Wscript.CreateObject("Wscript.Shell");
WSHShell.RegWrite("HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce\\Hibernate", "D:\\path\\hibernate.cmd");
WSHShell.Run("shutdown -r -t 0");
А в этом файле прописал следующее:
rundll32.exe user32.dll,LockWorkStation
sleep 200
rundll32.exe PowrProf.dll,SetSuspendState
Первая строка делает log off (так на всякий случай, что бы кто-то не прервал выполнения cmd), далее задержка в 200 секунд (для моей машины это значение оказалось оптимальным) и собственно переход в спящий режим.
Теперь в планах попытаться реализовать одноразовый безпарольный вход в систему для данного случая.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
reboot + hibernate == shutdown