在 Windows 8 中将非 GUI 应用程序作为服务运行

在 Windows 8 中将非 GUI 应用程序作为服务运行

我在 Linux 上做过这个,很简单,但在 Windows 上我就不知道了!有没有办法在 Windows 中将命令行应用程序作为服务运行?我的目标是在不使用 vidalia 包的情况下在后台运行 tor。提前谢谢 ;)

答案1

虽然 SC 很乐意将任何可执行文件安装为 Windows 服务,但只有当可执行文件是真正的服务并且被编写为与服务控制管理器 (SCM) 交互时,您的服务才会启动。

如果你的应用程序是常规的非服务应用程序或批处理文件,则需要类似微软的 SRVANY拦截来自 SCM 的启动请求并运行您的应用程序。商业替代品也可用。

答案2

您可以使用SC命令来执行此操作。您需要以管理员身份启动命令提示符并使用以下命令:

sc create <new_service_name> binpath= "<path_to_the_executable>"

请注意,您需要在“可执行文件路径”两边使用引号。
并且不要忘记后面的“ ”(空格)binPath=(否则可能不起作用)

有关 sc 命令及其用法的更多信息,请参阅Microsoft 知识库文章,以及 来自 TechNet 的文章(用于高级用法)。

希望这可以帮助。

相关内容