Я запускаю несколько самостоятельно написанных приложений Winforms .net 3.5 из общей папки в Windows 10.
Все работало правильно, но после последнего большого обновления (1803) приложение больше не запускается.
Кажется, что программа падает в тот момент, когда она пытается открыть сокет. Первая проблема была при доступе к базе данных: исключение:
2018-05-03 14:36:32,314 [1] ERROR NHibernate.Transaction.AdoTransaction [(null)] - Begin transaction failed
MySql.Data.MySqlClient.MySqlException: Unable to connect to any of the specified MySQL hosts. ---> System.Net.Sockets.SocketException: invalid argument
at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
at MySql.Data.Common.MyNetworkStream.CreateSocketStream(MySqlConnectionStringBuilder settings, IPAddress ip, Boolean unix)
at MySql.Data.Common.MyNetworkStream.CreateStream(MySqlConnectionStringBuilder settings, Boolean unix)
at MySql.Data.Common.StreamCreator.GetStream(MySqlConnectionStringBuilder settings)
at MySql.Data.MySqlClient.NativeDriver.Open()
Я пытался обойти эту проблему, но даже доступ к SSH-серверу не работал, когда программа запускалась из общего сетевого ресурса:
2018-05-03 14:30:30,654 [1] ERROR WinForms.SpringApplication [(null)] - Main Handler
Tamir.SharpSsh.jsch.JSchException: System.Net.Sockets.SocketException: invalid argument
at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
at Tamir.SharpSsh.java.net.Socket..ctor(String host, Int32 port)
at Tamir.SharpSsh.jsch.Util.createSocket(String host, Int32 port, Int32 timeout)
bei Tamir.SharpSsh.jsch.Session.connect(Int32 connectTimeout)
bei Tamir.SharpSsh.SshBase.ConnectSession(Int32 tcpPort)
bei Tamir.SharpSsh.SshBase.Connect(Int32 tcpPort)
bei Tamir.SharpSsh.SshBase.Connect()
Когда я копирую каталог локально, программа работает нормально.
Есть идеи, почему кажется, что Windows блокирует доступ к сокетам, когда я запускаю эту программу из сетевого ресурса?
Я знаю, что доверяю .net-коду, так что его можно запускать с общего сетевого ресурса, но я восстановил полное доверие, и оно все еще падает (и обычно оно падает намного раньше, если я не доверял полностью) .