WinSCP:校验和计算(不支持操作。)
WinSCP: Checksum calculation (Operation not supported.)
我在我的 C# WinForms 应用程序中使用 WinSCP .NET 程序集,我想将我的远程目录与我的本地目录同步。这适用于 WinSCP。
但在同步开始之前,我想检查远程控制器和本地控制器是否完全不同。为此,我想使用 WinSCP 中的 CalculateFileChecksum()
方法。 Here is an example for what I'm trying to do.
这是我调用方法的代码:
var checksum =
session.CalculateFileChecksum("md5", Properties.Settings.Default.ftpServerModDir);
第一个字符串是计算校验和的算法,第二个是远程路径。
如果我 运行 这段代码,我会得到以下异常。
Operation not supported.
看起来,我的FTP服务器不支持MD5,但是thistable说FTP应该支持以下
Supported (HASH, XSHA1, XSHA256, XSHA512, MD5, XMD5, XCRC).
我已经尝试过 HASH、MD5 和 XMD5,但总是得到相同的异常。
有没有人知道如何让它工作?或者如何检查我的服务器支持哪种算法?
感谢您的帮助!
how can I check which algorithm my server supports?
使用 WinSCP GUI 连接到您的服务器,选择一个文件并转到 Files > Properties, select Checksum tab。看看 GUI 提供了哪些算法:
使用对话框中显示的算法名称,如果有的话就是全部。如果显示 none,则不能使用 Session.CalculateFileChecksum
。
请注意,您在 CalculateFileChecksum
中使用算法名称(如 md5
或 sha-1
),不要使用 FTP 命令名称(如 XMD5
, XSHA1
).
请注意,您的服务器很可能根本不支持校验和计算,因为 MD5 是迄今为止使用最广泛的一种。因此,如果不支持 MD5,则不太可能支持其他任何格式。
but this table says that FTP should support the following
Supported (HASH, XSHA1, XSHA256, XSHA512, MD5, XMD5, XCRC).
table 表示 WinSCP 支持那些 FTP 命令来计算校验和。 None 这些命令实际上是标准化的,FTP 服务器不需要支持任何命令。
见FTP: copy, check integrity and delete。
另请注意,您不能将 Session.CalculateFileChecksum
用于目录,只能用于文件。
我在我的 C# WinForms 应用程序中使用 WinSCP .NET 程序集,我想将我的远程目录与我的本地目录同步。这适用于 WinSCP。
但在同步开始之前,我想检查远程控制器和本地控制器是否完全不同。为此,我想使用 WinSCP 中的 CalculateFileChecksum()
方法。 Here is an example for what I'm trying to do.
这是我调用方法的代码:
var checksum =
session.CalculateFileChecksum("md5", Properties.Settings.Default.ftpServerModDir);
第一个字符串是计算校验和的算法,第二个是远程路径。
如果我 运行 这段代码,我会得到以下异常。
Operation not supported.
看起来,我的FTP服务器不支持MD5,但是thistable说FTP应该支持以下
Supported (HASH, XSHA1, XSHA256, XSHA512, MD5, XMD5, XCRC).
我已经尝试过 HASH、MD5 和 XMD5,但总是得到相同的异常。
有没有人知道如何让它工作?或者如何检查我的服务器支持哪种算法?
感谢您的帮助!
how can I check which algorithm my server supports?
使用 WinSCP GUI 连接到您的服务器,选择一个文件并转到 Files > Properties, select Checksum tab。看看 GUI 提供了哪些算法:
使用对话框中显示的算法名称,如果有的话就是全部。如果显示 none,则不能使用 Session.CalculateFileChecksum
。
请注意,您在 CalculateFileChecksum
中使用算法名称(如 md5
或 sha-1
),不要使用 FTP 命令名称(如 XMD5
, XSHA1
).
请注意,您的服务器很可能根本不支持校验和计算,因为 MD5 是迄今为止使用最广泛的一种。因此,如果不支持 MD5,则不太可能支持其他任何格式。
but this table says that FTP should support the following
Supported (HASH, XSHA1, XSHA256, XSHA512, MD5, XMD5, XCRC).
table 表示 WinSCP 支持那些 FTP 命令来计算校验和。 None 这些命令实际上是标准化的,FTP 服务器不需要支持任何命令。
见FTP: copy, check integrity and delete。
另请注意,您不能将 Session.CalculateFileChecksum
用于目录,只能用于文件。