请教如何获得windows屏保事件? 如题,请教高手!即windows屏保开始的时间我的程序记录一下,屏保退出的时间程序再记录一下?查了一下,觉得winlogon事件通知比较靠谱,但没有C#版,请高手赐教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以参考下屏保程序非常简单,它只是一个扩展名为“.scr”,全屏运行,并符合一定规则的应用程序,我们可以用任何语言来进行开发。屏保程序放置在系统的System32目录下面,被系统自动调用执行。当系统执行屏保程序时,它会要求带上一个不同的命令参数,以实现不同的功能,如正常运行,预览,设置等。我们只要在程序中为不同参数实现不同的功能,我们的程序就可以被系统正常地调用了。以下列出全部的命令参数及其意义: 命令行参数 意义详解 /s 正常运行屏保程序(到时间系统自动调用), 一般要求为接收到键盘事件时退出,屏蔽鼠标事件及其显示 /a 允许在用户结束屏保运行时,显示一个密码输入对话框(WIN98需要自已实现对话框,WIN2000及以后可自动返回锁定时的登录对话框,此参数可以不必使用) /c 在屏保选取配置时,显示本屏保程序的参数设置对话框 /p 在屏保选取配置时,预览屏保程序,一般要求为可接收键盘或鼠标事件后返返 在C#中我们可以这样实现:using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Windows.Forms;public class MyScreenSaver : System.Windows.Forms.Form{public static void Main(string arg){Application.Run(new MyScreenSaver(arg)); //把参数传到Form中去}public MyScreenSaver(string arg){//实现全屏显示this.Width = Screen.PrimaryScreen.Bounds.Width; this.Height = Screen.PrimaryScreen.Bounds.Height;this.Left = 0;this.Top = 0;switch(arg.ToLower()){case "/s":/*...正常运行实现代码*/break;case "/a":/*...密码对话框实现代码*/break;case "/c":/*...参数设置实现代码*/break;case "/p":/*...预览实现代码*/break;default:Application.Exit(); //其它情况退出break;}/*...其它代码*/}/*...它代码*/}程序成后,把生成的EXE扩展名改变“.scr”,再复制到System32下便可。然后你就可以在桌面-->“显示属性”-->“屏幕保护程序”去选取,并进行其它相关的操作(设置,预览等)了. 屏保程序非常简单,它只是一个扩展名为“.scr”,全屏运行,并符合一定规则的应用程序,我们可以用任何语言来进行开发。屏保程序放置在系统的System32目录下面,被系统自动调用执行。当系统执行屏保程序时,它会要求带上一个不同的命令参数,以实现不同的功能,如正常运行,预览,设置等。我们只要在程序中为不同参数实现不同的功能,我们的程序就可以被系统正常地调用了。以下列出全部的命令参数及其意义: 命令行参数 意义详解 /s 正常运行屏保程序(到时间系统自动调用), 一般要求为接收到键盘事件时退出,屏蔽鼠标事件及其显示 /a 允许在用户结束屏保运行时,显示一个密码输入对话框(WIN98需要自已实现对话框,WIN2000及以后可自动返回锁定时的登录对话框,此参数可以不必使用) /c 在屏保选取配置时,显示本屏保程序的参数设置对话框 /p 在屏保选取配置时,预览屏保程序,一般要求为可接收键盘或鼠标事件后返返 在C#中我们可以这样实现:using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Windows.Forms;public class MyScreenSaver : System.Windows.Forms.Form{public static void Main(string arg){Application.Run(new MyScreenSaver(arg)); //把参数传到Form中去}public MyScreenSaver(string arg){//实现全屏显示this.Width = Screen.PrimaryScreen.Bounds.Width; this.Height = Screen.PrimaryScreen.Bounds.Height;this.Left = 0;this.Top = 0;switch(arg.ToLower()){case "/s":/*...正常运行实现代码*/break;case "/a":/*...密码对话框实现代码*/break;case "/c":/*...参数设置实现代码*/break;case "/p":/*...预览实现代码*/break;default:Application.Exit(); //其它情况退出break;}/*...其它代码*/}/*...它代码*/}程序成后,把生成的EXE扩展名改变“.scr”,再复制到System32下便可。然后你就可以在桌面-->“显示属性”-->“屏幕保护程序”去选取,并进行其它相关的操作(设置,预览等)了. VB.Net翻译成C# 字符串的处理,求高手。。。。 关于随机数的问题 如何能把查询结果显示在checkboxlist? 仁者见仁,讨论一个类的设计, 如何将一个字节数组保存为二进制文件???? 关于cookie的域,谁能帮帮我? wince平台,c# 如何不重复创建sqlite数据库? C# 获取键盘所有按键记录 在C#中怎么把刚输入进文本框里的东西在提交之后自动清除掉? 正则表达式匹配手机号码 关于windows服务的
屏保程序非常简单,它只是一个扩展名为“.scr”,全屏运行,并符合一定规则的应用程序,我们可以用任何语言来进行开发。
屏保程序放置在系统的System32目录下面,被系统自动调用执行。当系统执行屏保程序时,它会要求带上一个不同的命令参数,以实现不同的功能,如正常运行,预览,设置等。我们只要在程序中为不同参数实现不同的功能,我们的程序就可以被系统正常地调用了。以下列出全部的命令参数及其意义:
命令行参数 意义详解
/s 正常运行屏保程序(到时间系统自动调用), 一般要求为接收到键盘事件时退出,屏蔽鼠标事件及其显示
/a 允许在用户结束屏保运行时,显示一个密码输入对话框(WIN98需要自已实现对话框,WIN2000及以后可自动返回锁定时的登录对话框,此参数可以不必使用)
/c 在屏保选取配置时,显示本屏保程序的参数设置对话框
/p 在屏保选取配置时,预览屏保程序,一般要求为可接收键盘或鼠标事件后返返 在C#中我们可以这样实现:
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
public class MyScreenSaver : System.Windows.Forms.Form
{
public static void Main(string arg)
{
Application.Run(new MyScreenSaver(arg)); //把参数传到Form中去
}
public MyScreenSaver(string arg)
{
//实现全屏显示
this.Width = Screen.PrimaryScreen.Bounds.Width;
this.Height = Screen.PrimaryScreen.Bounds.Height;
this.Left = 0;
this.Top = 0;
switch(arg.ToLower())
{
case "/s":
/*...正常运行实现代码*/
break;
case "/a":
/*...密码对话框实现代码*/
break;
case "/c":
/*...参数设置实现代码*/
break;
case "/p":
/*...预览实现代码*/
break;
default:
Application.Exit(); //其它情况退出
break;
}
/*...其它代码*/
}
/*...它代码*/
}程序成后,把生成的EXE扩展名改变“.scr”,再复制到System32下便可。然后你就可以在桌面-->“显示属性”-->“屏幕保护程序”去选取,并进行其它相关的操作(设置,预览等)了.
屏保程序放置在系统的System32目录下面,被系统自动调用执行。当系统执行屏保程序时,它会要求带上一个不同的命令参数,以实现不同的功能,如正常运行,预览,设置等。我们只要在程序中为不同参数实现不同的功能,我们的程序就可以被系统正常地调用了。以下列出全部的命令参数及其意义:
命令行参数 意义详解
/s 正常运行屏保程序(到时间系统自动调用), 一般要求为接收到键盘事件时退出,屏蔽鼠标事件及其显示
/a 允许在用户结束屏保运行时,显示一个密码输入对话框(WIN98需要自已实现对话框,WIN2000及以后可自动返回锁定时的登录对话框,此参数可以不必使用)
/c 在屏保选取配置时,显示本屏保程序的参数设置对话框
/p 在屏保选取配置时,预览屏保程序,一般要求为可接收键盘或鼠标事件后返返 在C#中我们可以这样实现:
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
public class MyScreenSaver : System.Windows.Forms.Form
{
public static void Main(string arg)
{
Application.Run(new MyScreenSaver(arg)); //把参数传到Form中去
}
public MyScreenSaver(string arg)
{
//实现全屏显示
this.Width = Screen.PrimaryScreen.Bounds.Width;
this.Height = Screen.PrimaryScreen.Bounds.Height;
this.Left = 0;
this.Top = 0;
switch(arg.ToLower())
{
case "/s":
/*...正常运行实现代码*/
break;
case "/a":
/*...密码对话框实现代码*/
break;
case "/c":
/*...参数设置实现代码*/
break;
case "/p":
/*...预览实现代码*/
break;
default:
Application.Exit(); //其它情况退出
break;
}
/*...其它代码*/
}
/*...它代码*/
}程序成后,把生成的EXE扩展名改变“.scr”,再复制到System32下便可。然后你就可以在桌面-->“显示属性”-->“屏幕保护程序”去选取,并进行其它相关的操作(设置,预览等)了.