`
csstome
  • 浏览: 1543393 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

windows程序自动锁屏功能的实现

阅读更多

这个问题来自论坛提问

Q:当我登录进入主界面时,在规定的时间内没有做任何操作,系统就注销(就像电脑的屏保)。

A:其实很简单,参考一个api函数就可以了:GetLastInputInfo,以下是参考代码

演示程序在你10秒内没有任何鼠标键盘活动既最小化,最小化后晃动鼠标即可复原

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace WindowsApplication28
... {
public partial class Form1:Form
... {
[StructLayout(LayoutKind.Sequential)]
public struct LASTINPUTINFO
... {
[MarshalAs(UnmanagedType.U4)]
public int cbSize;
[MarshalAs(UnmanagedType.U4)]
public uint dwTime;
}

[DllImport(
" user32.dll " )]
public static extern bool GetLastInputInfo( ref LASTINPUTINFOplii);


public long getIdleTick()
... {
LASTINPUTINFOvLastInputInfo
= new LASTINPUTINFO();
vLastInputInfo.cbSize
= Marshal.SizeOf(vLastInputInfo);
if ( ! GetLastInputInfo( ref vLastInputInfo)) return 0 ;
return Environment.TickCount - ( long )vLastInputInfo.dwTime;
}


public Form1()
... {
InitializeComponent();
}


private void Form1_Load( object sender,EventArgse)
... {
this .timer1.Interval = 2000 ;
this .timer1.Enabled = true ;

}

private void timer1_Tick( object sender,EventArgse)
... {
long i = getIdleTick();
this .Text = string .Format( " jinjazz说:您已经{0}ms没有动了 " ,i);
if (i > 10 * 1000 )
... {
this .WindowState = FormWindowState.Minimized;
}

else
... {
this .WindowState = FormWindowState.Normal;
}

}


}

}
分享到:
评论

相关推荐

    程序自动锁屏 针对软件自身

    ### 程序自动锁屏实现机制解析 #### 背景与意义 在现代软件开发领域中,安全性和用户体验是两个重要的考量因素。对于一些敏感应用或长时间未操作的应用程序,实现自动锁屏功能可以有效提升数据安全性,防止未经...

    C#锁屏功能实现.zip

    这个"C#锁屏功能实现"项目包含了多个文件,它们共同构成了一个简单的C#应用程序,用于实现系统的锁屏功能。下面我们将逐一分析这些文件的作用和相关知识点。 1. **App.config**:这是应用程序的配置文件,用于存储...

    自动锁屏脚本命令.txt

    自动锁屏脚本就是其中一种常见的自动化工具,尤其在企业环境中,为了保护敏感信息不被未经授权的人员访问,自动锁屏功能显得尤为重要。本文将深入探讨“自动锁屏脚本命令”背后的原理、应用场景以及如何实现自动锁屏...

    防止电脑自动锁屏的小工具

    适用于受控的电脑,比如公司给每个人的电脑上下发了一个组策略进行自动锁屏的,且无法私自安装软件的电脑; 此工具为绿色免安装,打开就可用,无需安装; 原理是通过虚拟移动鼠标,以达到使系统处于活动状态的目的,...

    Windows下利用HOOK和进程挂起实现的桌面锁屏

    在本例中,我们可能会设置一个键盘HOOK,以在用户按下特定键(如"Win+L")时触发锁屏功能。 其次,是“进程挂起”。在Windows中,挂起进程意味着暂停其执行,使其不再占用CPU资源。当我们想要锁定桌面时,可以挂起...

    防锁屏工具 防止自动锁屏

    标题中的“防锁屏工具 防止自动锁屏”是指一种软件应用,它的主要功能是防止计算机在无人操作时因系统设定的自动锁屏策略而进入锁屏状态。这通常发生在企业环境中,公司为了保障信息安全,可能会设置定时锁屏策略,...

    Windows10自动抓取锁屏壁纸工具

    Windows10目前都会默认使用锁屏壁纸,有...7. 复制目录需要事先建好,如果设定成为桌面壁纸目录,就可以实现将锁屏壁纸当做桌面壁纸的自动化 实现原理的文章: https://blog.csdn.net/ydogg/article/details/103052534

    开机登录后自动锁屏

    文件名“开机自动锁屏.bat”表明这是一个批处理文件,用于在Windows中运行命令以实现自动锁屏。创建这样的批处理文件,可以使用`rundll32.exe user32.dll, LockWorkStation`命令,将其写入到批处理文件中,然后设置...

    锁屏 自动锁屏 定时锁屏 注销软件

    自动锁屏功能是指当用户在设定的无操作时间后,系统会自动进入锁屏状态,防止他人未经许可访问用户的工作或个人信息。这一功能通常用于公共场所或者多人共享的电脑,以确保数据安全。实现这一功能的核心是系统级的...

    C# WinFrom 挂机锁屏功能实现(实例)

    在本文中,我们将深入探讨如何使用C#和Visual Studio 2008(VS2008)在Windows Forms(WinForm)应用程序中实现挂机锁屏功能。挂机锁屏是许多桌面应用中的一项重要安全特性,它可以保护用户的计算机在无人看管时免受...

    xp、7、10锁屏功能

    3. **锁屏功能实现**:在.NET环境中,可以通过调用Windows API函数来实现锁屏。例如,可以使用`LockWorkStation`函数,它是`user32.dll`库的一部分,用于立即锁定工作站,阻止未授权的用户访问。 4. **安全性考虑**...

    ShakeMouse,防止自动锁屏

    标题中的“ShakeMouse,防止自动锁屏”指的是一个名为ShakeMouse的工具,它的主要功能是防止计算机在用户无操作时自动进入锁屏状态。这通常发生在用户长时间离开电脑但希望保持工作环境不被中断的情况下,比如进行长...

    自动晃鼠标防锁屏小工具

    而“ShakeMouse.exe”则是编译后的可执行文件,用户可以直接运行这个文件,无需AutoIt环境,方便快捷地实现防锁屏功能。 总的来说,这个“自动晃鼠标防锁屏小工具”是一个基于AutoIt编程语言开发的应用,它通过模拟...

    windows锁屏源代码

    在Windows操作系统中,锁屏功能是一项重要的安全特性,它允许用户暂时离开计算机时保护他们的桌面不被未经授权的访问。"Windows锁屏源代码"是指用于实现这一功能的编程代码,通常使用C++、C#或其他支持Windows API的...

    windows桌面锁屏软件

    Windows操作系统本身内置了简单的锁屏功能。只需按下`Win+L`快捷键,即可快速锁定桌面。此时,用户需要输入密码或PIN码才能重新进入桌面。 2. **自定义锁屏背景**: 在Windows 10及以上版本中,用户可以通过设置...

    Windows自动登录与锁屏.docx

    本文主要介绍了如何在Windows XP、Windows 7以及Windows Server 2021和2021 R2等系统中设置自动登录和自动锁屏。 首先,我们来看如何设置Windows系统的自动登录功能。这个功能适用于个人电脑,特别是当电脑启动后...

    Windows锁屏专家

    2. **自动锁屏**:设置自动锁定时间,当电脑长时间无操作后,WinLock会自动执行锁屏功能,确保系统安全。 3. **密码保护**:用户可以设置自定义密码,只有输入正确的密码才能解锁,提供额外的安全保障。 4. **个性...

    python实现windows倒计时锁屏功能

    python实现windows倒计时锁屏功能这一知识点,主要涉及了Python编程语言以及其在Windows操作系统中实现特定功能的应用。在本次介绍中,我们将会探讨如何使用Python编写一个简单的脚本,以达到在设定的倒计时时间结束...

    基于qt5.14.2 qml实现锁屏以及解锁

    在实现锁屏功能时,我们可能需要以下组件: 1. 背景图片或颜色:这是锁屏界面的基础,可以通过Rectangle或Image组件实现。 2. 锁屏图案或密码输入:这可以通过PathView或者一组可交互的Button或Rectangle实现,用户...

Global site tag (gtag.js) - Google Analytics