Чтобы отключить блокировку:
В разделе HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\Windows\CurrentVersion\Policies\System
создайте новое DWORD
имя с именем DisableLockWorkstation
и установите значение 1.
Затем перезагрузите компьютер.
На моем компьютере с Windows 7 система блокируется через 10 минут бездействия. Обычно я нахожу этот параметр рядом с настройкой заставки. Однако настройка затенена серым цветом.
Я думаю, что это из-за корпоративной политики группы. Поскольку я являюсь администратором этого компьютера, я должен быть в состоянии перенастроить параметр групповой политики с помощью gpedit.msc.
Какой параметр групповой политики мне нужно изменить, чтобы предотвратить автоматическую блокировку моей рабочей станции?
Изменить: я не настроил заставку. Я также хочу продолжать иметь возможность заблокировать рабочую станцию вручную.
Чтобы отключить блокировку:
В разделе HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\Windows\CurrentVersion\Policies\System
создайте новое DWORD
имя с именем DisableLockWorkstation
и установите значение 1.
Затем перезагрузите компьютер.
Групповая политика из домена, скорее всего, отменит любое внесенное вами изменение. Если это создает проблему для вашей работы, почему бы не связаться с администратором и посмотреть на решения. Внесение изменений может быть нарушением корпоративной политики и иметь последствия.
Быстрый звонок должен помочь.
Ответ на конкретный вопрос, который вы задали:
User Configuration\Policies\Administrative Templates\Control Panel\Personalization
, Необходимые настройки: «Включить заставку», «Тайм-аут заставки», «Заставить заставку» (это важно, потому что если в системе не настроена заставка, она не будет работать) и, наконец, «Защитить заставку паролем».
Групповая политика переопределяет ваши настройки, но вы можете имитировать активность пользователя, чтобы предотвратить блокировку экрана. Проверьте этот ответ, как легко.
Как уже говорили другие, политика домена обычно переопределяет любые локальные параметры, которые вы пытаетесь настроить для этого. Однако я хотел бы добавить еще пару вещей:
Будьте внимательны при настройке этого параметра, будь то через реестр или иным образом. Однажды я попытался возиться с моей в одной системе (политика домена блокируется через 15 минут, но я предпочитаю 5 - не помню, что я изменил), и система перестала слушать ни домен, ни мои предпочтения даже после того, как я откатил сдачу. В этом случае он вообще не работал с заставкой. Это именно то, что вы хотите, но определенно не то, что я хотел. YMMV.
Независимо от того: если ваша система не требует немедленного доступа в течение полного рабочего дня для сохранения жизни и / или имущества (например, 911 Call Center), вероятно, это противоречит политике вашей организации, запрещающей блокировку рабочей станции. Если ваша система действительно попадают в эту категорию, то это, вероятно, уже не настроен на блокировку. Поэтому лучше просто оставить это в покое .
Даже если вам удастся постоянно изменить настройки, корпоративные администраторы могут обнаружить, что компьютер не соответствует требованиям, и снова включить политику. После нескольких попыток вы или ваш менеджер можете получить памятку или визит в дружественном отделе ИТ-безопасности.
Просто воспроизведите некоторые песни в медиаплеере Windows, выбрав параметр повтора (отключение звука). Тогда он никогда не запирает и не спит.
You can use the Nosleep.exe function. It works like a charm. You need to download it from the internet.
This works on Windows 8/7/2008R2/2003 R2
Download link http://www.symantec.com/connect/downloads/readynosleepexe-prevents-screensaver-and-pc-locking
Я хотел сделать что-то подобное.
Я попробовал бесплатную программу « Кофеин», но она была заблокирована нашей ИТ-политикой. Я закончил тем, что написал скрипт на Python, который делает то же самое (посылая нажатие клавиш F15каждые XX секунд).
(Он определенно может быть обрезан до минимума строк, но у него есть всего 15 минут, чтобы сэкономить на этом, поэтому первая часть представляет собой большую копию другого кода).
Вот:
#!/python import ctypes import random import re import time from argparse import ArgumentParser, HelpFormatter LONG = ctypes.c_long DWORD = ctypes.c_ulong ULONG_PTR = ctypes.POINTER(DWORD) WORD = ctypes.c_ushort class MOUSEINPUT(ctypes.Structure): _fields_ = ( ('dx', LONG), ('dy', LONG), ('mouseData', DWORD), ('dwFlags', DWORD), ('time', DWORD), ('dwExtraInfo', ULONG_PTR) ) class KEYBDINPUT(ctypes.Structure): _fields_ = ( ('wVk', WORD), ('wScan', WORD), ('dwFlags', DWORD), ('time', DWORD), ('dwExtraInfo', ULONG_PTR) ) class _INPUTunion(ctypes.Union): _fields_ = ( ('mi', MOUSEINPUT), ('ki', KEYBDINPUT) ) class INPUT(ctypes.Structure): _fields_ = (('type', DWORD), ('union', _INPUTunion)) def SendInput(*inputs): nInputs = len(inputs) LPINPUT = INPUT * nInputs pInputs = LPINPUT(*inputs) cbSize = ctypes.c_int(ctypes.sizeof(INPUT)) return ctypes.windll.user32.SendInput(nInputs, pInputs, cbSize) INPUT_MOUSE = 0 INPUT_KEYBOARD = 1 def Input(structure): if isinstance(structure, MOUSEINPUT): return INPUT(INPUT_MOUSE, _INPUTunion(mi=structure)) elif isinstance(structure, KEYBDINPUT): return INPUT(INPUT_KEYBOARD, _INPUTunion(ki=structure)) else: raise TypeError('Cannot create INPUT structure (keyboard)!') keys = { 'DEFAULT': 0x7E, # F15 key 'SNAPSHOT': 0x2C, # PRINT SCREEN key 'F1': 0x70, # F1 key 'F2': 0x71, # F2 key 'F3': 0x72, # F3 key 'F4': 0x73, # F4 key 'F5': 0x74, # F5 key 'F6': 0x75, # F6 key 'F7': 0x76, # F7 key 'F8': 0x77, # F8 key 'F9': 0x78, # F9 key 'F10': 0x79, # F10 key 'F11': 0x7A, # F11 key 'F12': 0x7B, # F12 key 'F13': 0x7C, # F13 key 'F14': 0x7D, # F14 key 'F15': 0x7E, # F15 key 'F16': 0x7F, # F16 key 'F17': 0x80, # F17 key 'F18': 0x81, # F18 key 'F19': 0x82, # F19 key 'F20': 0x83, # F20 key 'F21': 0x84, # F21 key 'F22': 0x85, # F22 key 'F23': 0x86, # F23 key 'F24': 0x87, # F24 key } def Keyboard(code, flags=0): # Code for key 0..9 or A..Z: it corresponds to the the ASCII code if len(code) == 1 and re.match(r'[0-9A-Za-z]', code): key = ord(code.upper()) # Keys 'F...': we use code in the dictionary else: key = keys.get(code.upper(), keys['DEFAULT']) return Input(KEYBDINPUT(key, key, flags, 0, None)) ############################################################################ sentences = [ "Don't sleep!", "Stay awake!", "Are you still here?", "Hello...", "Want some coffee?", "What are you doing?" ] def keep_alive(delay, nb_cycles=-1, key='F15'): """ Send keystroke F15 at a given delay for a given nb of cycles Args: delay(int): delay in seconds nb_cycles(int): number of cycles (set to -1 for unlimited) key(str): Key to send (default: 'F15') """ print("Trust me, I will keep you alive!\n") while nb_cycles != 0: time.sleep(delay) SendInput(Keyboard(key)) print(random.choice(sentences)) nb_cycles -= 1 if __name__ == '__main__': # Information on the Program copyright_year = 2018 prog = "stay_awake" version_str = "%s v1.0" % prog help_string = """\ Purpose: Send a keystroke (F15) to simulate user activity """ # Options parser = ArgumentParser( description=help_string, prog=prog, formatter_class=lambda prog: HelpFormatter(prog, max_help_position=60) ) parser.add_argument( "-k", "--key", type=str, default='F15', help="Key to send [Dflt: F15]" ) parser.add_argument( "-d", "--delay", type=int, default=234, help="Delay (in s) between keystrokes [Dflt: 234]" ) parser.add_argument( "-r", "--duration", type=int, default=-1, help="Duration (in s) or negative value for infinite" ) options = parser.parse_args() # Run nb_cycles = options.duration if options.duration < 0 \ else int(options.duration/options.delay) keep_alive(options.delay, nb_cycles, key=options.key)