我可以使用 WinSCP GUI 定义代理服务器。如果我这样做,我就可以连接到远程主机。但在代码中我没有找到为 WinSCP 声明代理服务器的方法。
在这种情况下我收到
远程服务器返回错误 (407) 需要代理身份验证。
My code:
SessionOptions sessionOptions = new SessionOptions
{
Protocol = protocol,
HostName = hostname,
UserName = user,
Password = pass,
PortNumber = portnumber
};
using (Session session = new Session())
{
session.ExecutablePath = @"C:\Program Files (x86)\WinSCP\WinSCP.exe";
session.Open(sessionOptions);
TransferOptions options = new TransferOptions();
options.FileMask = mask;
SynchronizationResult synchronizationResult;
synchronizationResult =
session.SynchronizeDirectories(mode, local, path, deletefiles, options: options);
synchronizationResult.Check();
}
Use the SessionOptions.AddRawSettings配置适合您的代理类型的原始会话设置。
例如:
sessionOptions.AddRawSettings("ProxyMethod", "3");
sessionOptions.AddRawSettings("ProxyHost", "proxy");
查看完整列表原始会话设置.
虽然更简单的方法是配置代理在 WinSCP GUI 中并拥有它生成代码模板为你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)