解决使用`sc.exe`添加gitea为Windows服务时的error code 1639问题

当试图使用`sc.exe`将gitea添加为Windows service时遇到的error code 1639问题及其解决方法。

问题概要

使用sc.exe将gitea登录为windows service时出现error code 1639

1
sc.exe create gitea start= auto binPath= "\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\""

解决方案

去掉start=bingPath=后面和对应值之间的空格。别忘了以管理员模式执行。

1
sc.exe create gitea start=auto binPath="\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\""

详细经过

前两天使用nginx代理gitea到我的域名上,要把gitea作为service在我的电脑开机时就自动后台启动。按照gitea官方文档的记载,使用下面的命令换一下Path即可追加。

1
sc.exe create gitea start= auto binPath= "\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\""

但是我无论怎么检查就是会跳1639错误,网上检索后发现stackoverflow老哥12年前遇到类似问题,老哥说是A space is required between the equal sign and the value.,但是我加上了空格依然没用。网上其他相关错误代码也说是wrong format of the installation file name.

问了ChatGPT老师也瞎几把生成答案。

既然是wrong format那我就瞎几把改改format呗。所以运气非常好,删了start=bingPath=后面和对应值之间的空格,好了。

1
sc.exe create gitea start=auto binPath="\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\""

另外别忘了以管理员模式执行。

虽然就这,但是能搜到的上次记录还是12年前,甚至都已经不适用了。以此记录解决方案。

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus