Shadowsocks-windows: 错误反馈:错误信息 Shdowsocks not-UI Error

Created on 7 Jun 2017  ·  9Comments  ·  Source: shadowsocks/shadowsocks-windows

Version(release version or AppVeyor link)

4.0.4

Environment(Operating system, .NET Framework, etc)

Windows 10 14393.1168

Steps you have tried

重新打开应用

What did you expect to see?

程序正常运行,没有错误信息

What did you see instead?

显示错误信息

Config and error log in detail (with all sensitive info masked)

 [E] System.NullReferenceException: Object reference not set to an instance of an object.
   at Shadowsocks.Util.SystemProxy.Sysproxy.SetIEProxy(Boolean enable, Boolean global, String proxyServer, String pacURL)
   at Shadowsocks.Controller.SystemProxy.Update(Configuration config, Boolean forceDisable, PACServer pacSrv)
   at Shadowsocks.Controller.ShadowsocksController.Reload()
   at Shadowsocks.Program.Main()
bug

Most helpful comment

请关闭SS,删除同文件夹下的user-wininet.json后,重试运行

All 9 comments

谢谢,问题已解决,原因未知。
删除了旧程序,重新下载了 Shadowsocks 后正常运行。
可能是因为电脑蓝屏原因导致文件损坏而致,我的电脑老旧,经常有蓝屏发生,也有蓝屏损坏文件的黑历史。

请关闭SS,删除同文件夹下的user-wininet.json后,重试运行

Shadowsocks-4.0.6 无法解析二维码

@webbbbb 此问题已知。

win10更新后(05/01/2018) 4.0.9无法启动
已尝试删除其它文件
.NET为4.7版本

log如下

[2018-05-07 10:53:23] System.Net.Sockets.SocketException (0x80004005): The procedure call table is invalid
   at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
   at System.Net.Sockets.TcpListener..ctor(IPAddress localaddr, Int32 port)
   at Shadowsocks.Controller.PrivoxyRunner.GetFreePort()
[2018-05-07 10:53:23] System.NullReferenceException: Object reference not set to an instance of an object.
   at Shadowsocks.Controller.Listener.Start(Configuration config)
   at Shadowsocks.Controller.ShadowsocksController.Reload()
[2018-05-07 10:53:35] System.InvalidOperationException: Process has exited, so the requested information is not available.
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.get_MainWindowHandle()
   at System.Diagnostics.Process.CloseMainWindow()
   at Shadowsocks.Controller.PrivoxyRunner.KillProcess(Process p)
[2018-05-07 10:53:35] System.Net.Sockets.SocketException (0x80004005): The procedure call table is invalid
   at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
   at System.Net.Sockets.TcpListener..ctor(IPAddress localaddr, Int32 port)
   at Shadowsocks.Controller.PrivoxyRunner.GetFreePort()
[2018-05-07 10:53:35] System.NullReferenceException: Object reference not set to an instance of an object.
   at Shadowsocks.Controller.Listener.Start(Configuration config)
   at Shadowsocks.Controller.ShadowsocksController.Reload()
[2018-05-07 10:54:01] System.InvalidOperationException: Process has exited, so the requested information is not available.
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.get_MainWindowHandle()
   at System.Diagnostics.Process.CloseMainWindow()
   at Shadowsocks.Controller.PrivoxyRunner.KillProcess(Process p)
[2018-05-07 10:54:07] System.Net.Sockets.SocketException (0x80004005): The procedure call table is invalid
   at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
   at System.Net.Sockets.TcpListener..ctor(IPAddress localaddr, Int32 port)
   at Shadowsocks.Controller.PrivoxyRunner.GetFreePort()
[2018-05-07 10:54:08] System.NullReferenceException: Object reference not set to an instance of an object.
   at Shadowsocks.Controller.Listener.Start(Configuration config)
   at Shadowsocks.Controller.ShadowsocksController.Reload()
[2018-05-07 10:54:10] System.Reflection.TargetInvocationException: An exception occurred during the operation, making the result invalid.  Check InnerException for exception details. ---> System.Net.WebException: An exception occurred during a WebClient request. ---> System.Configuration.ConfigurationErrorsException: Error creating the Web Proxy specified in the 'system.net/defaultProxy' configuration section. ---> System.Net.Sockets.SocketException: The procedure call table is invalid
   at System.Net.SafeCloseSocketAndEvent.CreateWSASocketWithEvent(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType, Boolean autoReset, Boolean signaled)
   at System.Net.NetworkAddressChangePolled..ctor()
   at System.Net.AutoWebProxyScriptEngine.AutoDetector.Initialize()
   at System.Net.AutoWebProxyScriptEngine.AutoDetector.get_CurrentAutoDetector()
   at System.Net.AutoWebProxyScriptEngine..ctor(WebProxy proxy, Boolean useRegistry)
   at System.Net.WebProxy.UnsafeUpdateFromRegistry()
   at System.Net.WebProxy..ctor(Boolean enableAutoproxy)
   at System.Net.Configuration.DefaultProxySectionInternal..ctor(DefaultProxySection section)
   at System.Net.Configuration.DefaultProxySectionInternal.GetSection()
   --- End of inner exception stack trace ---
   at System.Net.Configuration.DefaultProxySectionInternal.GetSection()
   at System.Net.WebRequest.get_InternalDefaultWebProxy()
   at System.Net.HttpWebRequest..ctor(Uri uri, ServicePoint servicePoint)
   at System.Net.HttpRequestCreator.Create(Uri Uri)
   at System.Net.WebRequest.Create(Uri requestUri, Boolean useUriBase)
   at System.Net.WebRequest.Create(Uri requestUri)
   at System.Net.WebClient.GetWebRequest(Uri address)
   at System.Net.WebClient.DownloadStringAsync(Uri address, Object userToken)
   --- End of inner exception stack trace ---
   --- End of inner exception stack trace ---
   at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
   at Shadowsocks.Controller.UpdateChecker.http_DownloadStringCompleted(Object sender, DownloadStringCompletedEventArgs e)
[2018-05-07 10:54:24] System.InvalidOperationException: Process has exited, so the requested information is not available.
   at System.Diagnostics.Process.EnsureState(State state)
   at System.Diagnostics.Process.get_MainWindowHandle()
   at System.Diagnostics.Process.CloseMainWindow()
   at Shadowsocks.Controller.PrivoxyRunner.KillProcess(Process p)
[2018-05-07 10:54:26] System.Net.Sockets.SocketException (0x80004005): The procedure call table is invalid
   at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
   at System.Net.Sockets.TcpListener..ctor(IPAddress localaddr, Int32 port)
   at Shadowsocks.Controller.PrivoxyRunner.GetFreePort()
[2018-05-07 10:54:26] System.NullReferenceException: Object reference not set to an instance of an object.
   at Shadowsocks.Controller.Listener.Start(Configuration config)
   at Shadowsocks.Controller.ShadowsocksController.Reload()
[2018-05-07 10:54:29] System.Reflection.TargetInvocationException: An exception occurred during the operation, making the result invalid.  Check InnerException for exception details. ---> System.Net.WebException: An exception occurred during a WebClient request. ---> System.Configuration.ConfigurationErrorsException: Error creating the Web Proxy specified in the 'system.net/defaultProxy' configuration section. ---> System.Net.Sockets.SocketException: The procedure call table is invalid
   at System.Net.SafeCloseSocketAndEvent.CreateWSASocketWithEvent(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType, Boolean autoReset, Boolean signaled)
   at System.Net.NetworkAddressChangePolled..ctor()
   at System.Net.AutoWebProxyScriptEngine.AutoDetector.Initialize()
   at System.Net.AutoWebProxyScriptEngine.AutoDetector.get_CurrentAutoDetector()
   at System.Net.AutoWebProxyScriptEngine..ctor(WebProxy proxy, Boolean useRegistry)
   at System.Net.WebProxy.UnsafeUpdateFromRegistry()
   at System.Net.WebProxy..ctor(Boolean enableAutoproxy)
   at System.Net.Configuration.DefaultProxySectionInternal..ctor(DefaultProxySection section)
   at System.Net.Configuration.DefaultProxySectionInternal.GetSection()
   --- End of inner exception stack trace ---
   at System.Net.Configuration.DefaultProxySectionInternal.GetSection()
   at System.Net.WebRequest.get_InternalDefaultWebProxy()
   at System.Net.HttpWebRequest..ctor(Uri uri, ServicePoint servicePoint)
   at System.Net.HttpRequestCreator.Create(Uri Uri)
   at System.Net.WebRequest.Create(Uri requestUri, Boolean useUriBase)
   at System.Net.WebRequest.Create(Uri requestUri)
   at System.Net.WebClient.GetWebRequest(Uri address)
   at System.Net.WebClient.DownloadStringAsync(Uri address, Object userToken)
   --- End of inner exception stack trace ---
   --- End of inner exception stack trace ---
   at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
   at Shadowsocks.Controller.UpdateChecker.http_DownloadStringCompleted(Object sender, DownloadStringCompletedEventArgs e)
System.Net.Sockets.SocketException (0x80004005): The procedure call table is invalid

感觉是Winsock或TCP/IP协议有问题。
请尝试一管理员身份启动命令提示符或PowerShell,然后执行:

netsh interface ipv4 reset
netsh interface ipv6 reset
netsh winsock reset

一行一回车,三行执行完毕后重新启动计算机看看。

Thx,不过没法reproduce了...
我更新win10 version 1803的补丁之后问题解决了

该问题及有可能是Windows 10系统本身的问题导致的,这些莫名其妙的现象已经不是第一次出现了。

Was this page helpful?
0 / 5 - 0 ratings

Related issues

WildBlizzard picture WildBlizzard  ·  4Comments

zxam picture zxam  ·  4Comments

Galaxy0419 picture Galaxy0419  ·  4Comments

venusbahar picture venusbahar  ·  3Comments

hztgz picture hztgz  ·  3Comments