EasyGBS在Windows10 版本号20H2环境下不能以服务运行的排查及调整

博客讲述了在更新到Windows10 20H2后,EasyGBS服务启动失败的问题。作者发现是golang.org/x/sys/windows库不兼容导致,通过更新该库文件并修改RawSockaddrAny结构体及sockaddr()方法解决了问题。

大家知道今年我们首先在EasyGBS内添加了WebRTC的播放协议,随后也逐渐将该协议普及到了EasyCVR、EasyNVR等其他平台当中,同时其他协议也可以切换播放,因此目前EasyGBS可以输出四种协议的视频流。

目前我们也在对EasyGBS进行更新,原先EasyGBS项目可以在Windows电脑以服务启动,在Windows 10升级后,突然就不行,使用命令执行服务并未报错,但在服务列表中手动启动会报错,“错误:1067 进程意外终止”。

之前遇到过类似的服务启动不了问题,是因为读取文件的路径不是绝对路径,而这次将所有读取配置文件、加载的dll库文件都屏蔽,还是不行,最后问题就是goland的库全都屏蔽测试,发现“golang.org/x/sys/windows”的库有问题,没有兼容Windows 10 20H2,于是将这个库文件更新即可。

golang.org/x/sys/windows库文件修改内容。

RawSockaddrAny 结构体发生变化:

image.png

sockaddr()方法也发生变化。

替换之前如下:

image.png

替换之后显示如下:

image.png

zsyscall_windows.go文件中修改了:

image.png

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值