gpt4 book ai didi

windows-services - 如何从指定名称和描述的命令行安装 Windows 服务?

转载 作者:行者123 更新时间:2023-12-04 00:58:39 30 4
gpt4 key购买 nike

我使用 Delphi 为客户端服务器应用程序创建了一个 Windows 服务。

要安装它,我使用

c:\Test\MyService.exe /install (or /uninstall)

这将安装服务,并在 Windows 服务中列出“MyService”名称和空描述。

如何定义不同的名称并插入描述(运行 services.msc 时可见)?

笔记:
我需要这个,因为在同一台机器上我需要安装更多次相同的服务(每个数据库 1 个)。

目前我发现的唯一解决方法是重命名服务 exe,但我更愿意找出正确的命令行方式来执行此操作(因为我是从 ShellExecute 执行此操作的)。

更新 :
不知何故,我会寻找类似的东西(当然这只是为了解释原因!- InstallService.exe 是我刚刚发明的名字):
InstallService.exe c:\Test\MyService.exe /install /name='MyService1' 
/description='This is my service for database 1'

但更紧凑的版本也可以,例如:
c:\Test\MyService.exe /install /name='MyService1' 
/description='This is my service for database 1'

最佳答案

Windows 已经附带了您需要的实用程序,即 sc create .

>sc 创建/?
描述:
在注册表和服务数据库中创建一个服务条目。
用法:
sc 创建 [服务名称] [binPath=] ...

选项:
注意:选项名称包含等号。
等号和值之间需要一个空格。
类型=
(默认 = 自己)
开始=
(默认 = 需求)
错误=
(默认 = 正常)
二进制路径=
组=
标签=
依赖=
对象=
(默认 = 本地系统)
显示名称=
密码=

这将创建服务并允许您指定名称和显示名称。

要修改您需要的描述sc description :

>sc 描述/?
描述:
设置服务的描述字符串。
用法:
sc 描述 [服务名称] [描述]


另一个明显的选择是将命令行解析构建到您的服务中。这很容易做到。只需为服务的 BeforeInstall 分配处理程序和/或 AfterInstall事件并处理那里的开关。

关于windows-services - 如何从指定名称和描述的命令行安装 Windows 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18508628/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com