WinSCP,.NET库,校验和支持

时间:2018-10-17 17:01:27

标签: ftp winscp winscp-net

我正在使用WinSCP .NET库。有时,当服务器不支持校验和功能时,session.CalculateFileChecksum()调用将引发异常。

我想通过首先检查FTP服务器是否支持该呼叫来避免这种情况。我想知道是否有一种方法可以使用.NET库API。

有什么想法吗?

注意:我已经知道我可以使用WinSCP GUI来做到这一点。需要一个API / C#解决方案。

TIA

1 个答案:

答案 0 :(得分:0)

没有API。

您所能做的就是尝试,捕获异常并测试其消息是否为:

  

不支持该操作。


或者您可以启用会话日志记录并解析日志文件以获取对FEAT命令的响应,查找HASHXSHA1XSHA256XSHA512XMD5MD5XCRC(这就是WinSCP在内部所做的事情)。

> 2018-10-17 19:16:53.910 FEAT
< 2018-10-17 19:16:53.910 211-Features:
< 2018-10-17 19:16:53.910  MDTM
< 2018-10-17 19:16:53.910  REST STREAM
< 2018-10-17 19:16:53.910  SIZE
< 2018-10-17 19:16:53.910  MLST type*;size*;modify*;
< 2018-10-17 19:16:53.910  MLSD
< 2018-10-17 19:16:53.910  AUTH SSL
< 2018-10-17 19:16:53.910  AUTH TLS
< 2018-10-17 19:16:53.910  PROT
< 2018-10-17 19:16:53.910  PBSZ
< 2018-10-17 19:16:53.910  UTF8
< 2018-10-17 19:16:53.910  CLNT
< 2018-10-17 19:16:53.910  MFMT
< 2018-10-17 19:16:53.910  HASH SHA-1*;SHA-512;MD5
< 2018-10-17 19:16:53.910  EPSV
< 2018-10-17 19:16:53.910  EPRT
< 2018-10-17 19:16:53.910 211 End