Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Windows操作系统,开着DS应用重启电脑后无法上网的问题说明(原因:系统代理未关闭,但重启后DS代理服务未启动) #109

Closed
greper opened this issue Sep 12, 2021 · 18 comments · Fixed by #377
Assignees
Labels
Bug Something isn't working v1.8.9 1.8.9版本 重要提示(用户必看) 用户必看
Milestone

Comments

@greper
Copy link
Contributor

greper commented Sep 12, 2021

应用开启后会自动修改系统代理设置,正常退出会自动关闭系统代理
当应用意外关闭时,可能会因为没有将系统代理恢复,从而导致完全无法上网。

对于此问题有如下几种解决方案可供选择:
1、重新打开应用即可(右键应用托盘图标可完全退出,将会正常关闭系统代理设置)
2、如果应用被卸载了,此时需要手动恢复系统代理设置
3、你也可以设置ds为开机自启

目前由于Electron无法监听windows的关机事件,所以暂时没有什么好办法能够解决此问题,我会持续跟踪electron的相关更新。

@greper greper pinned this issue Sep 12, 2021
@greper greper changed the title 重启电脑后无法上网的问题说明 开着应用重启电脑后无法上网的问题说明 Sep 12, 2021
@SmartElec
Copy link

SmartElec commented Sep 25, 2021

环境:Win10 21H1

方法1 开关机脚本

在系统开关机脚本目录下需要用户权限,简单一点就是在当前用户目录下新建bat脚本。如 %USERPROFILE%
系统默认开关机脚本目录

C:\Windows\System32\GroupPolicy\Machine\Scripts\Shutdown
C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup

在用户目录(%USERPROFILE%)新建文件 colse_proxy.bat

"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1

打开组策略 gpedit.msc->计算机管理->Windows设置->脚本(启动/关机)

添加脚本,名称填写批处理的全路径.
脚本bat内容(直接关闭代理设置)

"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1

方法2 任务计划

任务计划程序->创建基本任务->触发器->计算机启动时(或者是登陆时),最后查看属性对话框;
可以修改延迟多长时间启动,以及以最高权限运行脚本。

脚本bat内容(检测程序是否运行,没有运行就关闭代理)

@echo off

set logfile="C:\\batlog.txt"

echo %date:~0,10%_%time:~0,2%%time:~3,2%%time:~6,2% >> %logfile%

tasklist | find "dev-sidecar" /i

if "%errorlevel%" == "1" (
	echo "close sysproxy" >> %logfile%
	"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1
)else echo "do nothing"  >> %logfile%


echo.>> %logfile%

发现开关机脚本不怎么好用,选择自己适合的方法吧

@SmartElec
Copy link

环境:Win10 21H1

方法1 开关机脚本

在系统开关机脚本目录下需要用户权限,简单一点就是在当前用户目录下新建bat脚本。如 %USERPROFILE%
系统默认开关机脚本目录

C:\Windows\System32\GroupPolicy\Machine\Scripts\Shutdown
C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup

在用户目录(%USERPROFILE%)新建文件 colse_proxy.bat

"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1

打开组策略 gpedit.msc->计算机管理->Windows设置->脚本(启动/关机)

添加脚本,名称填写批处理的全路径.
脚本内容(直接关闭代理设置)

"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1

方法2 任务计划

任务计划程序->创建基本任务->触发器->计算机启动时(或者是登陆时),最后查看属性对话框;
可以修改延迟多长时间启动,以及以最高权限运行脚本。

脚本内容(检测程序是否运行,没有运行就关闭代理)

@echo off

tasklist | find "dev-sidecar" /i
if "%errorlevel%"=="1" (
	echo "close sysproxy"
	"C:\Program Files\DevSidecar\dev-sidecar\resources\extra\sysproxy.exe" set 1
)else(
	echo "do nothing"
)

发现开关机脚本不怎么好用,选择自己适合的方法吧

反复重启测试还好,过了几个小时开机发现还是没关闭代理,不知道为什么,下次把执行过程输出到日志看一下

@zqr95518
Copy link

这种直接开机以后把软件打开,再关闭退出,网络就好了吧

@zsk66
Copy link

zsk66 commented Oct 31, 2021

我都是用360网络恢复。。

@zsk66
Copy link

zsk66 commented Oct 31, 2021

亲测 360网络恢复好使,但是每次360开机就要自启还是很烦

@doyuodo
Copy link

doyuodo commented May 16, 2023

win11可以用吗?

@greper greper unpinned this issue Jan 5, 2024
@wangliang181230 wangliang181230 changed the title 开着应用重启电脑后无法上网的问题说明 Windows操作系统,开着DS应用重启电脑后无法上网的问题说明 Apr 8, 2024
@AquaHarp
Copy link

AquaHarp commented Apr 28, 2024

我的办法是用任务计划程序直接修改注册表,开机时不管之前有没有设置代理都直接取消Internet选项中的代理设置
image
add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f

@starknt
Copy link
Contributor

starknt commented Oct 17, 2024

根据 https://github.com/paymoapp/electron-shutdown-handler 提供的方法应该可以解决这个问题, 或许我可以开一个 PR

@wangliang181230
Copy link
Contributor

麻烦你开一个PR吧。

@wangliang181230 wangliang181230 added the Bug Something isn't working label Oct 17, 2024
@starknt
Copy link
Contributor

starknt commented Oct 17, 2024

PR 遇到了一些问题,我正在尝试解决 😅

@starknt
Copy link
Contributor

starknt commented Oct 18, 2024

cc @wangliang181230
image
日志里正确打印了,但是代理没有正确的关闭,你有什么头绪?

@wangliang181230
Copy link
Contributor

wangliang181230 commented Oct 19, 2024

ds是借助第三方的 proxy.exe 来设置系统代理的。可能就是这个导致的。关机过程中无法启动这个程序。

@wangliang181230
Copy link
Contributor

想办法用nodejs直接设置Windows系统代理。

@starknt
Copy link
Contributor

starknt commented Oct 19, 2024

看起来是调用 sysproxy 失败了
image

@starknt
Copy link
Contributor

starknt commented Oct 19, 2024

我发现在管理员模式下启动应用能正常关闭代理

@starknt
Copy link
Contributor

starknt commented Oct 19, 2024

如果没有意外的话今天应该能完成这个PR

@ZL-comfyui
Copy link

其他网页可以打开吗

@wangliang181230 wangliang181230 changed the title Windows操作系统,开着DS应用重启电脑后无法上网的问题说明 Windows操作系统,开着DS应用重启电脑后无法上网的问题说明(原因:系统代理未关闭,但重启后代理服务未启动) Dec 12, 2024
@wangliang181230 wangliang181230 changed the title Windows操作系统,开着DS应用重启电脑后无法上网的问题说明(原因:系统代理未关闭,但重启后代理服务未启动) Windows操作系统,开着DS应用重启电脑后无法上网的问题说明(原因:系统代理未关闭,但重启后DS代理服务未启动) Dec 12, 2024
@wangliang181230
Copy link
Contributor

wangliang181230 commented Dec 12, 2024

其他网页可以打开吗

@ZL-comfyui 重启后系统代理开关未关闭的问题导致的。

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Bug Something isn't working v1.8.9 1.8.9版本 重要提示(用户必看) 用户必看
Projects
None yet
9 participants