Repository: shadowsocks/shadowsocks-windows

Issue #502: 添加重复服务器配置导致客户端无法响应右键菜单
Created: 2016-03-15T03:27:02Z
Windows10 Pro 1511 64-Bit
ShadowSocks 3.0
因为一次误操作，重复添加了一份已经存在于配置列表中的配置。
添加方式为扫描屏幕上的二维码，在点击右键菜单中的“扫描屏幕上的二维码”后，弹出编辑配置窗口，可以看见该配置被添加，并选中了改配置。
客户端弹窗提示 ShadowSocks 失去响应，等待一段时间后未恢复，通过任务管理器强制关闭。
重启客户端后，发现每次启动客户端都会加载两个 ShadowSocks.exe 进程，如果要关闭，则需分开强制结束。
此时右下角能够正常显示客户端已启用，鼠标停留于上方可以弹出状态框，提示已使用方才添加的重复配置。
右键点击无效，无法退出，也无法改变服务器配置。
重启问题依旧。
强制结束客户端进程后，进入 gui-config.json 文件，删除方才添加的配置。重启客户端，提示未选择服务器配置，此时右键菜单已经可以正常调出，其余功能均可使用。
没有试图重现。
受水平所限无法判断下述日志是否与此问题有关，姑且先做参考：

[2016-03-15 10:57:21] Shadowsocks started
[2016-03-15 10:58:39] System.IO.IOException: 文件“C:\Users\Molen\AppData\Local\Temp\ss_privoxy.exe”正由另一进程使用，因此该进程无法访问此文件。
在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
在 System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
在 System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
在 Shadowsocks.Controller.FileManager.UncompressFile(String fileName, Byte[] content)
在 Shadowsocks.Controller.PolipoRunner..cctor()
[2016-03-15 10:58:39] Shadowsocks started
[2016-03-15 11:00:09] System.IO.IOException: 文件“C:\Users\Molen\AppData\Local\Temp\ss_privoxy.exe”正由另一进程使用，因此该进程无法访问此文件。
在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
在 System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
在 System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
在 Shadowsocks.Controller.FileManager.UncompressFile(String fileName, Byte[] content)
在 Shadowsocks.Controller.PolipoRunner..cctor()
[2016-03-15 11:00:10] Shadowsocks started
[2016-03-15 11:05:03] Shadowsocks started
[2016-03-15 11:10:30] System.IO.IOException: 文件“C:\Users\Molen\AppData\Local\Temp\ss_privoxy.exe”正由另一进程使用，因此该进程无法访问此文件。
在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
在 System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
在 System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
在 Shadowsocks.Controller.FileManager.UncompressFile(String fileName, Byte[] content)
在 Shadowsocks.Controller.PolipoRunner..cctor()
[2016-03-15 11:10:30] Shadowsocks started
[2016-03-15 11:10:30] System.ArgumentException: No server configured
在 Shadowsocks.Controller.TCPHandler.CreateRemote()
在 Shadowsocks.Controller.TCPHandler.StartConnect()
[2016-03-15 11:10:33] System.ArgumentException: No server configured
在 Shadowsocks.Controller.TCPHandler.CreateRemote()
在 Shadowsocks.Controller.TCPHandler.StartConnect()
[2016-03-15 11:10:33] System.ArgumentException: No server configured
在 Shadowsocks.Controller.TCPHandler.CreateRemote()
在 Shadowsocks.Controller.TCPHandler.StartConnect()
[2016-03-15 11:10:33] System.Reflection.TargetInvocationException: 操作过程中出现异常，结果无效。  有关异常的详细信息，请查看 InnerException。 ---> System.Net.WebException: 基础连接已经关闭: 发送时发生错误。 ---> System.IO.IOException: 由于远程方已关闭传输流，身份验证失败。
在 System.Net.TlsStream.EndWrite(IAsyncResult asyncResult)
在 System.Net.PooledStream.EndWrite(IAsyncResult asyncResult)
在 System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar)
--- 内部异常堆栈跟踪的结尾 ---
在 System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
在 System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result)
在 System.Net.WebClient.DownloadBitsResponseCallback(IAsyncResult result)
--- 内部异常堆栈跟踪的结尾 ---
在 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
在 Shadowsocks.Controller.UpdateChecker.http_DownloadStringCompleted(Object sender, DownloadStringCompletedEventArgs e)
[2016-03-15 11:10:33] System.ArgumentException: No server configured
在 Shadowsocks.Controller.TCPHandler.CreateRemote()
在 Shadowsocks.Controller.TCPHandler.StartConnect()
[2016-03-15 11:10:36] Shadowsocks started

Duplicate issue #554: 配置文件中出现两个ip,密码等信息完全一致，备注不一样的时候，每次都报停，算是毕现的bug吧
Created: 2016-05-03T01:22:31Z
配置文件中出现两个ip,密码等信息完全一致，备注不一样的时候，每次都报停，算是毕现的bug吧

Closing comment (2016-05-03T01:30:15Z): dup #502