c# - WinSCP .NET 程序集 : Where to define proxy?

标签 c# proxy ftp winscp winscp-net

我可以使用 WinSCP GUI 来定义代理服务器。如果我这样做,我就可以连接到远程主机。但是在代码中我找不到为 WinSCP 声明代理服务器的方法。

在这种情况下我收到

Remote server returned an error (407) Proxy authentication required.

我的代码:

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();
}

最佳答案

使用 SessionOptions.AddRawSettings配置适合您的代理类型的原始 session 设置。

例如:

sessionOptions.AddRawSettings("ProxyMethod", "3");
sessionOptions.AddRawSettings("ProxyHost", "proxy");

查看 raw sessions settings 的完整列表.


虽然更简单的方法是 configure the proxy在 WinSCP GUI 中并拥有它 generate a code template给你。

关于c# - WinSCP .NET 程序集 : Where to define proxy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13375300/

相关文章:

c# - 将项目添加到 Azure 简易表时,未将 UWP 对象引用设置为对象的实例

c# - C# 正则表达式中的反向引用问题

powershell - FTP 复制失败取决于文件的数量和大小

php - 将 WordPress 站点复制到本地主机

Python FTP 隐式 TLS 连接问题

c# - 您如何测试 AD 密码是否满足配置的复杂性要求?

c# - 如何创建从 C# 到远程 couchbase 数据库的数据库连接

java - lighttpd : redirecting to another page causes duplicated hostname in path

tomcat - 通过 Tomcat servlet 代理常规 HTTP 和 WebSocket

c++ - 哪个 Windows API 用于 Windows 安全代理身份验证对话框?