绝大多数使用过 Windows 操作系统的用户都不会对注册表的 Run、RunOnce 键值感到陌生,但你真的了解所有这些键值的细节吗?让我们具体说来。

本文在Win2000,WinXp、Vista、Win7系统中讲解Run、RunOnce注册表键值,涉及如下四个:

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce

一、总述

HKEY_CURRENT_USER 代表当前用户,当前用户登录后才执行的操作。

HKEY_LOCAL_MACHINE 代表当前机器,所有操作在用户登录前就执行了。

Run 键值代表着开机启动项,也就是说在这个项下的键值会随着开机启动(这里的开机是指用户登录,也就是说只要有登录操作就会执行,注销然后登录,也会执行这个键值)。

RunOnce 键值类似于 Run 键值,唯一的区别在于,RunOnce 键值只执行一次,操作执行后会被自动删除。

二、Win2000、WinXp

在 2000、Xp下,Windows对这四个注册表键值的处理完全一样。

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run:

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run

1、进程由 Explorer 调起

2、多个项可以同时运行起来,无先后顺序

3、可以直接登录到桌面

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce

1、进程由 Explorer 调起

2、多个项不可以同时运行起来,必须等待一个进程结束后,另外一个进程方可运行起来

3、在所有进程结束前,不能登录到桌面

三、Vista、Win7

在 Vista、Win7 ,Windows 对这四个注册表键值的处理也完全一样,在 Vista、Win7 下,有完整性级别,requireAdministrator manifest(即exe上是否有小盾牌标志)的概念,所以情况稍微复杂些。

无盾牌标志的程序

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce

1、进程由 Explorer 调起

2、多个项可以同时运行起来,无先后顺序

3、可以直接登录到桌面

4、进程的完整级别为Medium Mandatory Level

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce

1、由 runonce.exe 调起,runonce.exe 由 Explorer调起,runonce.exe 的完整级别为High Mandatory Level

2、多个项不可以同时运行起来,必须等待一个进程结束后,另外一个进程方可运行起来

3、在所有进程结束前,不能登录到桌面

4、进程的完整级别为High Mandatory Level

5、进程结束后,runonce.exe 跟着结束

有盾牌标志的程序

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce

1、由于权限问题,进程不会被运行

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce

1、由 runonce.exe 调起,runonce.exe 由 Explorer调起,runonce.exe 的完整级别为High Mandatory Level

2、多个项不可以同时运行起来,必须等待一个进程结束后,另外一个进程方可运行起来

3、在所有进程结束前,不能登录到桌面

4、进程的完整级别为High Mandatory Level

5、进程结束后,runonce.exe 跟着结束

四、额外的 RunOnceEx 键值

在 Win2000、WinXp中,存在一个特例的注册表键值RunOnceEx,注册表全路径为:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEx。关于这个键值,99%的程序都不会用到,因此不做详细说明,微软官方的文档地址为:http://support.microsoft.com/kb/310593/en-us

https://blog.csdn.net/hellokandy/article/details/74935773

注册表 Run、RunOnce 浅析的更多相关文章

  1. C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序。

    C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序.但可以写入到H ...

  2. 注册表(regedit)

    注册表(Registry,繁体中文版Windows称之为登录档)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息. 打开方式:1.开始>>运行.中 ...

  3. delphi 注册表操作(读取、添加、删除、修改)完全手册

    DELPHI VS PASCAL(87)  32位Delphi程序中可利用TRegistry对象来存取注册表文件中的信息. 一.创建和释放TRegistry对象 1.创建TRegistry对象.为了操 ...

  4. Delphi的注册表操作

    转帖:Delphi的注册表操作 2009-12-21 11:12:52 分类: Delphi的注册表操作 32位Delphi程序中可利用TRegistry对象来存取注册表文件中的信息.     一.创 ...

  5. 黑客常用的windows注册表大全

    目录 使系统没有"运行"选项                        1让操作系统无"关闭系统" 选项                    2让操作系统 ...

  6. 入侵检测中需要监控的注册表路径研究(Windows Registry Security Check)

    1. Windows注册表简介 注册表(Registry,繁体中文版Windows称之为登录档)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息.早在Wind ...

  7. 常用的windows注册表大全

    目录 使系统没有“运行”选项                        1让操作系统无“关闭系统” 选项                    2让操作系统无“注销”选项              ...

  8. Window权限维持(一):注册表运行键

    在红队行动中在网络中获得最初的立足点是一项耗时的任务.因此,持久性是红队成功运作的关键,这将使团队能够专注于目标,而不会失去与指挥和控制服务器的通信.在Windows登录期间创建将执行任意负载的注册表 ...

  9. 详解Windows注册表分析取证

    大多数都知道windows系统中有个叫注册表的东西,但却很少有人会去深入的了解它的作用以及如何对它进行操作.然而对于计算机取证人员来说注册表无疑是块巨大的宝藏.通过注册表取证人员能分析出系统发生了什么 ...

随机推荐

  1. COGS——T 1265. [NOIP2012] 同余方程

    http://cogs.pro/cogs/problem/problem.php?pid=1265 ★☆   输入文件:mod.in   输出文件:mod.out   简单对比时间限制:1 s   内 ...

  2. 几种基于Java的SQL解析工具的比较与调用

    1.sqlparser http://www.sqlparser.com/ 优点:支持的数据库最多,除了传统数据库外还支持hive和greenplum一类比较新的数据库,调用比较方便,功能不错 缺点: ...

  3. (转)oracle 启动监听 报“监听程序不支持服务” 解决

    转自 http://www.51testing.com/html/99/478599-842622.html 今天安装了oracle后,启动监听,报错如下:    启动tnslsnr: 请稍候... ...

  4. 【CS Round #43 D】Bad Triplet

    [链接]点击打开链接 [题意] 给你n个点m条边的无权无向联通图; 让你找3个点A,B,C 使得A->B=B->C=A->C 这里X->Y表示点X到点Y的最短路长度. [题解] ...

  5. 洛谷—— P1069 细胞分裂

    https://www.luogu.org/problem/show?pid=1069#sub 题目描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家.现在,他正在为一个细 ...

  6. 1.2 Python基础知识 - 字符编码

    计算机中的数据是以二进制方式进行存储的,即只有"0"和"1",二进制是属于数据类型的数据,它只可以和其他进制的数据类型进行转换,但是不能存储其他字符,例如:字母 ...

  7. 【hdu 1403】Longest Common Substring

    [链接]h在这里写链接 [题意] 求两个串的最长公共子串. [题解] Sa[i]表示的是字典序为i的后缀的起始位置. 可以把两个字符串合在一起(中间用一个比'z'大的字符分割); 则如果Sa[i-1] ...

  8. springboot集成shiro 实现权限控制(转)

    shiro apache shiro 是一个轻量级的身份验证与授权框架,与spring security 相比较,简单易用,灵活性高,springboot本身是提供了对security的支持,毕竟是自 ...

  9. [Angular] Component architecture and Reactive Forms

    It it recommeded that when deals with form component, we can create a container component to hold st ...

  10. Android ---------- Android Bar Bug 总结

    1 怎样设置 ActionBar的Tab 的颜色? // 设置actionBar的颜色 Drawable draw = new ColorDrawable(Color.GREEN); actionBa ...