2012-03-01 10:54:52 +0000 2012-03-01 10:54:52 +0000
8
8

Windows 7: 使用组策略在10分钟后禁用锁定工作站。

在我的Windows 7电脑上,系统在10分钟不活动后就会被锁定。通常我会在屏幕保护配置旁边找到这个设置。然而,的设置是灰色的。

我认为这是由于公司的组策略。由于我是这台计算机的管理员,我应该可以使用gpedit.msc重新配置组策略设置。

*我需要更改什么组策略设置才能防止工作站自动锁定? *

编辑:我没有配置屏幕保护程序。我还想继续手动锁定工作站。

答案 (8)

11
11
11
2012-09-13 13:10:00 +0000

要禁用锁:

HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\Windows\CurrentVersion\Policies\System下,创建一个新的DWORD值,命名为DisableLockWorkstation,并将值设置为1。

然后重新启动计算机。

5
5
5
2016-02-12 07:55:45 +0000

你问的实际问题的答案是:

User Configuration\Policies\Administrative Templates\Control Panel\Personalization。需要的设置是 “启用屏幕保护程序","屏幕保护程序超时","强制使用特定的屏幕保护程序"(这一点很重要,因为如果系统没有配置屏幕保护程序,这将无法工作),最后是 "密码保护屏幕保护程序"。

from https://social.technet.microsoft.com/Forums/windowsserver/en-US/5c2518d4-f531-471a-a649-0f5dd5495679/group-policy-to-auto-lock-the-system-after-fix-interval?forum=winserverGP

3
3
3
2012-03-01 13:46:01 +0000

域的组策略很可能会覆盖你所做的任何更改。如果这给你的工作带来了问题,为什么不联系管理员并研究解决方案。进行更改可能会违反公司政策并产生后果。

快速呼叫应该会有帮助。

2
2
2
2013-07-24 07:53:23 +0000

组策略会覆盖你的设置,但你可以模仿用户活动来防止屏幕锁定。查看本答案了解简单的方法。

1
1
1
2018-04-16 15:30:18 +0000

我也想做类似的事情。

我试过免费软件 Caffeine 但它被我们的IT政策屏蔽了。最后我写了一个Python脚本,做了一个类似的事情(每隔xx秒发送一次击键F15)。

(它绝对可以被修剪到最少的行数,但是刚刚有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)
1
1
1
2013-12-24 19:48:30 +0000

只要在Windows媒体播放器的重复选项中选择播放一些歌曲,(静音音量)。然后它永远不会锁定或睡眠。

1
1
1
2014-03-31 08:10:52 +0000

你可以使用Nosleep.exe功能。它的作用就像一个魅力。你需要从网上下载它。

这在Windows 8/7/2008R2/2003 R2上工作

下载链接 http://www.symantec.com/connect/downloads/readynosleepexe-prevents-screensaver-and-pc-locking

1
1
1
2012-03-01 14:18:25 +0000

就像其他人说的那样,域策略一般会覆盖你试图为此配置的任何本地设置。不过还有几件事我想补充一下:

不管是通过注册表还是其他方式,都要小心调整这个设置。我曾经在一个系统上尝试过乱用我的设置(域名策略是在15分钟后锁定,但我更喜欢5分钟–不记得我改了什么了),结果系统既没有监听到域名,也没有监听到我的偏好,甚至在我回滚更改后也是如此。在这种情况下,它最终没有运行屏幕保护程序。这正是你想要的,但绝对不是我想要的。YMMV。

无论如何。除非你的系统是那种为了保护生命和/或财产而需要全时立即访问的系统(例如:911呼叫中心),否则防止工作站锁定可能是违反你的组织政策的。如果您的系统确实属于该类别,那么它可能已经被配置为不锁定。因此,最好的办法是不要管它.

即使你设法永久地更改了设置,企业管理员也可能会检测到计算机不符合规定,并再次强制开启策略。这样做几次后,你或你的经理可能会收到一份备忘录或来自你友好的IT安全部门的访问。