把程序写成服务有什么优点?

时间:2021-03-13 16:40:59
如题.
把程序写成服务,是EXE程序还是DLL程序,写成服务有什么好处?

5 个解决方案

#1


没优点,会让爱干净的用户想卸载你的软件
记住特权最小化原则

#2


引用 1 楼 lactoferrin 的回复:
没优点,会让爱干净的用户想卸载你的软件
记住特权最小化原则

你的意思是:会让爱干净的用户难卸载你的软件?
写成服务的,一样可以有IDE和消息循环?

#3


不是难卸载,是想卸载,就是你的软件很讨厌

服务中可以有界面,但这样会降低安全

需要界面时应该创建一个低权限的进程,这个进程显示界面并和服务通信

#4


服务都是exe程序,没有界面,难以调试,什么好处都没有,

只有一个好处,就是能在开机时自动运行,无需放进启动组,也可以以比较高的权限级别运行,

如果你要写后台运行的程序,可以写成服务,不过这样调试就麻烦了,

一般我都是先做成窗口程序,调试好了之后没问题,才建立另一个工程改为服务,

#5


有些功能是作为系统服务才能办到的。不涉及这样功能的软件,无需如此。

有些时候,对于部分代码,系统服务进程有时会得不到想要的结果,这是微软为系统服务的定位导致的。

对比楼上所说,先测试完代码再改成服务的行为。
Win2k3下,可以有 可交互服务,如果代码含有使用CFileDialog来指定桌面位置的话,这个桌面可不是当前登录用户(比如Administrator)的桌面。

在Win2k3之前就有如此问题,就不说Win7等os具备的Session隔离特性带来的问题了。

#1


没优点,会让爱干净的用户想卸载你的软件
记住特权最小化原则

#2


引用 1 楼 lactoferrin 的回复:
没优点,会让爱干净的用户想卸载你的软件
记住特权最小化原则

你的意思是:会让爱干净的用户难卸载你的软件?
写成服务的,一样可以有IDE和消息循环?

#3


不是难卸载,是想卸载,就是你的软件很讨厌

服务中可以有界面,但这样会降低安全

需要界面时应该创建一个低权限的进程,这个进程显示界面并和服务通信

#4


服务都是exe程序,没有界面,难以调试,什么好处都没有,

只有一个好处,就是能在开机时自动运行,无需放进启动组,也可以以比较高的权限级别运行,

如果你要写后台运行的程序,可以写成服务,不过这样调试就麻烦了,

一般我都是先做成窗口程序,调试好了之后没问题,才建立另一个工程改为服务,

#5


有些功能是作为系统服务才能办到的。不涉及这样功能的软件,无需如此。

有些时候,对于部分代码,系统服务进程有时会得不到想要的结果,这是微软为系统服务的定位导致的。

对比楼上所说,先测试完代码再改成服务的行为。
Win2k3下,可以有 可交互服务,如果代码含有使用CFileDialog来指定桌面位置的话,这个桌面可不是当前登录用户(比如Administrator)的桌面。

在Win2k3之前就有如此问题,就不说Win7等os具备的Session隔离特性带来的问题了。