我写了一个使用C#WinSCP .NET程序集的类。
该类将WinSCP Session
保存为字段,当我调用function" Start"该类初始化WinSCP Session
并打开它,然后每2秒重复调用Session.GetFiles
。
我想处理我班上的每一个例外情况,有一个案例我不能得到例外。
案例是:我运行我的类,它连接到FTP服务器并开始反复查找要下载的文件(列出Session.GetFiles
中发生的事件)。几次调用GetFiles
后我关闭了FTP服务器。下次调用GetFiles
时,程序会遇到阻塞方法(GetFiles
),该方法正在等待服务器再次启动。只有在1.5-2分钟之后,它会抛出SessionRemoteException
消息:"无法建立连接,因为目标计算机主动拒绝它" 。
我希望在10秒钟后阻止它,而不是随机的1.5-2分钟。
我尝试使用WinSCP网站中提到的每个Timeout方法。
答案 0 :(得分:1)
您需要设置Session.ReconnectTime
。默认为120秒。
session.ReconnectTime = TimeSpan.FromSeconds(10);