从 System32 创建和运行 Windows 迷你服务的完整指南

最后更新: 14/07/2025
作者: 艾萨克
  • 允许程序作为后台和启动服务运行。
  • 有经典(instsrv 和 srvany)和现代(sc.exe)方法来配置它们。
  • 操作注册表和系统路径时需要小心,以避免错误。

System32 中的 Windows 服务

你有没有想过如何在 Windows 通过 System32? 此过程似乎只针对高级用户,但实际上,只要遵循正确的说明并注意细节,就可以在不同版本的 Windows 中轻松完成。Windows 服务是在后台运行的应用程序, 通常,它们需要特殊权限,或者必须在用户登录之前可用。.

今天,我们将从 System32 文件夹开始,使用最安全、最有效的方法,分解创建和运行迷你 Windows 服务的所有可行选项。 我们将解释本机工具和外部实用程序, 技巧 了解不同版本操作系统的相关信息,并了解如何在整个过程中保持进度。出发!

从 System32 创建 Windows 服务是什么意思?

Windows 服务是 能够在后台运行的程序,由操作系统本身管理。与其他登录后启动的程序不同,服务即使没有用户登录也可以运行。它们位于 C:\ WINDOWS \ System32 它对于关键系统服务来说很常见,尽管位于此处的任何可执行文件可能对所有用户都可用,因此它是安装自定义服务的常见位置。

创建服务所需的工具和实用程序

在 Windows 中,特别是 XP、2003 等版本中,将应用程序转换为服务, Windows 7、8、10,甚至 Server 2008,都有多种选择。下面,我们总结了最常用的工具:

  • 安装程序 – 用于安装或删除服务的 Microsoft Resource Kit 实用程序。
  • 服务端 – 允许您将任何应用程序作为服务运行,即使它不是为此目的而设计的。
  • 脚本 – 线条工具 comandos 它集成到 Windows 中,用于创建、配置和控制服务。
  • Regedt32.exe/regedit.exe – 注册表编辑器用于调整服务路径和参数。
  Windows 10 激活错误:导致这些错误的原因以及如何修复这些错误?

这些实用程序的组合将允许您在 Windows 系统上安装自定义服务。

经典方法:使用 Instsrv.exe 和 Srvany.exe

最经典的方法,对于许多 Windows 版本仍然有效,包括使用 服务端 y 斯尔瓦尼,Microsoft 在资源工具包中提供的实用程序。

您可以在 Windows NT 资源工具包 或者从微软官方网站下载。你必须将两个文件复制到 System32 以便它们可以从系统中的任何位置使用。

一般程序是:

  1. 打开命令控制台(CMD) 为管理员。
  2. 运行命令:
    instsrv.exe "NombreDelServicio" srvany.exe
    例如: C:\Windows\System32\instsrv.exe Notepad C:\Windows\System32\srvany.exe
  3. 编辑 Windows 注册表以关联您想要作为服务运行的可执行文件:
    • 使用以下方式打开注册表编辑器 注册表编辑器 o regedt32.
    • 导航 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\.
    • 创建一个名为 参数.
    • 在此键中,创建一个类型为 REG_SZ应用领域。其值必须是要作为服务启动的可执行文件的完整路径(例如, C:\Windows\System32\notepad.exe).
  4. 保存更改并关闭注册表编辑器。
  5. 控制面板 > 服务 或者从命令行使用:
    NET START NombreDelServicio

这种方法简单且非常灵活,尽管它需要修改 Windows 注册表,因此建议在进行任何更改之前创建备份。

现代方法:使用SC.EXE创建服务

在最新版本的 Windows 中,包括 Windows 10 和 Server, 脚本 它是通过命令行管理服务的首选工具。它允许您从控制台创建新服务、设置启动参数、依赖项等。

基本语法为:

sc.exe create "NombreServicio" binpath= "C:\Windows\System32\ejemplo.exe" start= auto

主要参数:

  • binpath= 作为服务启动的可执行文件的完整路径(必需)。
  • 类型= 进程类型(own:独立进程,share:共享)。
  • 开始= 启动类型(自动:自动,需求:手动,禁用:禁用,延迟自动:短暂延迟后启动自动服务,启动/系统:用于驱动程序)。
  • 依赖= 指定此服务所依赖的服务(如果有)。
  • 对象= 服务运行的用户帐户(默认为 LocalSystem)。
  • 显示名称= 服务控制台中将显示的描述性名称。
  如何使用 PowerShell ISE:包含示例和技巧的完整指南

添加运行文件的服务的实际示例 miapp.exe 来自 System32:

sc.exe create MiServicio binpath= "C:\Windows\System32\miapp.exe" start= auto

使用此方法,您不需要手动编辑注册表,并且可以从命令行完全控制。

安装后配置和管理

创建服务后,您可以根据自己的需要进行自定义:

  • 更改启动模式(自动、手动或禁用) SERVICES.MSC 或控制台 sc.exe配置.
  • 使用以下命令启动或停止服务:
    NET START NombreDelServicio
    NET STOP NombreDelServicio
  • 如果需要的话,删除该服务:
    sc.exe delete NombreDelServicio

对于使用 srvany/instsrv 创建的服务,您可以编辑注册表中的参数来更改关联的可执行文件或其路径。

避免常见问题的技巧和窍门

如果不遵循某些预防措施,通过修改路径和可执行文件来创建服务可能会导致错误。以下是一些重要提示:

  • 始终备份注册表 在进行任何修改之前。
  • 确保转换为服务的可执行文件可靠且与作为服务运行兼容。.
  • 如果服务没有启动,请检查 Windows 事件日志中是否存在错误以及可能的权限不足。
  • 使用具有最低必要权限的用户帐户 在创建关键服务时。

在将服务部署到生产系统之前,务必在测试环境中对其进行测试。

排除 System32 和 Windows 注册表错误

有时, System32 目录或 config\systemprofile\Desktop 等路径可能会导致问题尤其是在 Windows 更新或系统崩溃后。如果您遇到“C:\Windows\system32\config\systemprofile\Desktop 不可用”之类的消息,请尝试以下方法:

1.恢复默认桌面路径

从文件资源管理器中按 赢+ E,右键单击桌面,选择“属性”>“位置”,然后单击“恢复默认值”。这应该可以解决所有路径不正确的问题。

2. 从默认用户复制桌面文件夹

揭示隐藏文件,访问 C:\用户\默认\ 并将桌面文件夹复制到 C:\Windows\system32\config\systemprofile。这样,您就可以恢复该配置文件的桌面。

  如何在 Windows 中逐步访问和配置组策略编辑器

3. 从注册表中检查配置

打开 注册表编辑器 并签到 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders Desktop 指向的值 C:\Users\%USERNAME%\Desktop%USERPROFILE%\Desktop.

4.创建新用户帐户

如果其他方法都失败了,请从控制面板或使用命令创建一个新帐户 control userpasswords2 在具有权限的CMD中。分配权限并移动旧用户的文件。

5.使用系统文件检查器

sfc /scannow 从CMD以管理员身份搜索和修复 损坏的文件.

6.更新或重新安装 Windows

如果没有解决方案,则就地升级或重新安装可以恢复操作而不会丢失重要文件。

高级选项:使用 SC.EXE 完成服务管理

对于那些希望完全定制服务行为的人来说, 执行程序 提供一组参数:

  • 类型= 定义服务是否为自有、共享、内核等。
  • 组= 将服务分配给特定的负载组。
  • 标签= 是/否获取控制器 ID。
  • 依赖= 定义服务或服务所依赖的组。
  • 对象= 指示其运行的帐户(对于特殊权限很有用)。
  • 显示名称= 为该服务赋予一个友好名称。
  • 密码= 如果服务需要不同的凭证。

一个非常完整的例子是:

sc.exe create MiServicio binpath= "C:\Windows\System32\miapp.exe" type= own start= auto depend= +TDI NetBIOS obj= "NT AUTHORITY\\LocalService" displayname= "Mi Servicio de Prueba" password= "mi_clave"

这样,您就可以跨多个设备自动安装服务,非常适合商业环境。

使用 Taskkill 和 Sc 控制进程和服务
相关文章:
如何使用 Taskkill 和 Sc 控制 Windows 中的进程和服务

发表评论