kha*_*osh 6 windows windows-registry
我有一个应用程序可以更新本地机器上的软件。我需要在用户登录之前更新软件,并且读到通过RunServicesOnce注册表项运行应用程序可能最适合用于此目的。
但是我找不到这个密钥regedit,它也没有出现在与 HKLM RunOnce 密钥相同的位置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce。
LocalSystem服务创建了密钥,它会作为LocalSystem?RunServicesOnce 注册表项在哪里
我有一个应用程序可以更新本地机器上的软件。我需要在用户登录之前更新软件
如果您希望它在用户登录之前启动,则必须将其作为服务启动。这是主要注册表项的启动顺序,在读取 bootmgr 后立即开始,以两个 Startup 文件夹中的程序快捷方式条目结束。
- HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute。这可以包括调度 chkdsk 运行而不是用户程序的指令。
- 接下来启动服务,然后是 RunServicesOnce 和 RunServices 注册表项(如果存在)
- 用户然后登录到系统
- HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\UserInit. 这指向程序 C:\WINDOWS\system32\userinit.exe 并且条目以逗号结尾。其他程序可以通过附加它们并用逗号分隔它们来从此键启动。
- HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell。这应该只包含一个条目,explorer.exe。
- 所有用户的这 2 个注册表项中的程序条目接下来开始: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 和 \RunOnce
- CURRENT USER 的这 2 个注册表项中的程序条目接下来开始: HKCU\Software\Microsoft\Windows\CurrentVersion\Run 和 \RunOnce
- 所有用户和当前用户的启动文件夹中的程序都是最后启动的。
像防病毒和防火墙这样的重要程序作为服务在序列的早期启动。出现在通知区域(屏幕右下方)的图标只是它们的用户界面,即选项和首选项。
64 位计算机中 32 位软件的附加位置是 HKLM\SOFTWARE\Wow6432Node 和 HKCU。
注册表甚至在 NT 内核加载之前就已被访问,因此了解计算机在启动时配置为加载的内容非常重要。以下注册表项在系统启动期间按不同 Windows 组件的使用顺序访问:
- HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute
- HKLM\System\CurrentControlSet\Services(起始值 0 表示内核驱动程序,在内核启动之前加载)
- HKLM\System\CurrentControlSet\Services(起始值为 2,自动启动和 3,通过 SCM 手动启动)
- HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
- HKCU\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
- HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
- HKCU\Software\Microsoft\Windows\CurrentVersion\RunServices
- HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
- HKCU\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad
- HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
- HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
- HKLM\Software\Microsoft\Windows\CurrentVersion\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
- HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
- HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\load
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SharedTaskScheduler(仅限 XP、NT、W2k)
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
注意:在 64 位体系结构和 64 位版本的 Windows 上运行的系统上,其中一些键也反映在 HKLM\Software\wow6432node 下。我不会在这篇文章中涵盖每一个。
以 LocalSystem 帐户运行您的服务,除非该帐户需要访问网络资源,此时您将创建域服务帐户,授予它访问适用资源的权限,然后硬编码其凭据以供服务运行。在本地机器上,它将拥有对所有内容的管理权限,并且不需要任何服务凭据的密码。
在本地系统帐户是由所使用的预定义的本地帐户 的服务控制管理器。安全子系统无法识别此帐户,因此您无法在调用LookupAccountName函数时指定其名称 。它在本地计算机上拥有广泛的特权,并充当网络上的计算机。它的令牌包括NT AUTHORITY\SYSTEM和BUILTIN\Administrators SID;这些帐户可以访问大多数系统对象。所有语言环境中的帐户名称都是.\LocalSystem。也可以使用名称LocalSystem或 ComputerName\LocalSystem。此帐户没有密码. 如果您在调用CreateService或ChangeServiceConfig函数时指定 LocalSystem 帐户,则 您提供的任何密码信息都将被忽略。
| 归档时间: |
|
| 查看次数: |
8630 次 |
| 最近记录: |