我正在从Windows 10中的共享文件夹运行一些自编写的Winforms .net 3.5应用程序.
一切正常,但在最后一次大更新(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,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代码,所以它可以从网络共享运行,但我已经更新了完全信任并且它仍然崩溃(如果我没有完全信任,通常它会更早崩溃).
最佳答案
我们有一些关于此问题的信息:
Windows 10 update 1803 does not open network connections on
executables files on SMBv1 share (as Windows Server 2003)
您可以尝试将程序移动到SMBv2或SMBv3兼容服务器进行检查.
(编辑:威海站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|