|
|
1
16
您还没有明确说明您试图在TService子类中更改什么。
比如:
|
|
|
2
3
您可以在内部创建具有多个线程的服务,每个线程的行为都像它自己的服务版本/副本。您可以使用服务控制器API IIRC来控制它。 |
|
|
3
2
是的,可以安装同一服务的多个实例,您只需在安装时(而不是运行时)动态更改名称,但这并不意味着需要更改名称。(代码项目中有一些示例代码 http://www.codeproject.com/KB/dotnet/MultipleInstNetWinService.aspx )
|
|
|
4
1
上述公认的答案非常有用。 我使用的代码:
SaveRegSetting是我自己的过程,FCommandLineOptions是一个标记命令行参数的对象。 |
|
|
5
0
将所有代码包装到从TThread继承的类中。 当您的服务启动时,它将从设置文件或注册表中读取一个数字,并创建大量的类实例。
要更改正在运行的实例数,可以关闭服务,编辑设置(在文件或注册表中)并重新启动服务。 |
|
|
6
0
除了入侵注册表,我建议使用以下指南并使用Windows服务控制器(sc.exe)命令行界面: When creating a service with sc.exe how to pass in context parameters? (编辑:请使用建议的代码获取名称和显示名称属性,但不要使用服务可执行文件的/install开关安装服务。) |