更改我的 Windows 服务的描述
Change the Description of my Windows Service
根据 this answer 的说法,似乎没有正式的方法来设置 Windows 服务的版本。然而,这可以通过将其插入 Description
或 DisplayName
.
来完成
我希望能够更改版本号而无需删除并重新安装该服务。但是除了安装本身,我找不到设置描述的方法。
那么,有什么方法可以在不重新安装的情况下更改服务的描述吗?
最好使用.Net。如果重要的话,服务本身也是 .Net。
如果您需要 Windows 服务的可执行文件的版本号,并且可执行文件是 .NET 程序集,则检索服务可执行文件的路径,然后从中检索版本executable/assembly.
虽然这不是纯 .NET 解决方案,但它可以在 .NET 中实现,并且它是 MS 支持的重新配置服务的唯一方法之一。另外,它不需要直接的注册表操作(尽可能避免)。
您可以使用 Windows 命令行服务控制器实用程序更改 Windows 服务的描述,SC.exe
.
您可以从 .NET 代码中执行您需要执行的命令,或者从 shell 或脚本中调用它,例如 CMD.exe
或 PowerShell。
sc.exe config YourServiceName displayName= "Your service description..."
注:
- 有关
SC config
命令的详细信息可在此处找到:MS Docs SC Config man page
- YourServiceName 是您的应用程序的实际服务名称,而不是当前的 DisplayName(当然,除非它们相同)
- 如果您的 DisplayName 不止一个字,需要用引号括起来
- 单词"displayName"和等号
之间不能有space
- 等号和所需服务描述的开头之间必须有一个或多个 space
这可以通过以下命令使用 SC.exe 实用程序来完成:
sc description <ServiceName> "Any Description you like."
可以从以管理员身份打开的命令 window 或从 .Net 应用程序调用此命令,前提是该服务已经创建。
根据 this answer 的说法,似乎没有正式的方法来设置 Windows 服务的版本。然而,这可以通过将其插入 Description
或 DisplayName
.
我希望能够更改版本号而无需删除并重新安装该服务。但是除了安装本身,我找不到设置描述的方法。
那么,有什么方法可以在不重新安装的情况下更改服务的描述吗?
最好使用.Net。如果重要的话,服务本身也是 .Net。
如果您需要 Windows 服务的可执行文件的版本号,并且可执行文件是 .NET 程序集,则检索服务可执行文件的路径,然后从中检索版本executable/assembly.
虽然这不是纯 .NET 解决方案,但它可以在 .NET 中实现,并且它是 MS 支持的重新配置服务的唯一方法之一。另外,它不需要直接的注册表操作(尽可能避免)。
您可以使用 Windows 命令行服务控制器实用程序更改 Windows 服务的描述,SC.exe
.
您可以从 .NET 代码中执行您需要执行的命令,或者从 shell 或脚本中调用它,例如 CMD.exe
或 PowerShell。
sc.exe config YourServiceName displayName= "Your service description..."
注:
- 有关
SC config
命令的详细信息可在此处找到:MS Docs SC Config man page - YourServiceName 是您的应用程序的实际服务名称,而不是当前的 DisplayName(当然,除非它们相同)
- 如果您的 DisplayName 不止一个字,需要用引号括起来
- 单词"displayName"和等号 之间不能有space
- 等号和所需服务描述的开头之间必须有一个或多个 space
这可以通过以下命令使用 SC.exe 实用程序来完成:
sc description <ServiceName> "Any Description you like."
可以从以管理员身份打开的命令 window 或从 .Net 应用程序调用此命令,前提是该服务已经创建。