WinSCP .NET assembly: Where to define proxy?(WinSCP .NET 程序集:在哪里定义代理?)
问题描述
我可以使用 WinSCP GUI 定义代理服务器.如果我这样做,我可以连接到远程主机.但是在代码中我找不到为 WinSCP 声明代理服务器的方法.
I am able to define the proxy server by using the WinSCP GUI. If I do this I am able to connect to a remote host. But in code I don't find a way to declare the proxy server for WinSCP.
在这种情况下我收到
远程服务器返回错误 (407) 需要代理身份验证.
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)WinSCPWinSCP.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 配置适合您的代理类型的原始会话设置.
Use the SessionOptions.AddRawSettings to configure raw session settings appropriate for your kind of proxy.
例如:
sessionOptions.AddRawSettings("ProxyMethod", "3");
sessionOptions.AddRawSettings("ProxyHost", "proxy");
查看原始会话设置的完整列表.
虽然更简单的方法是在 WinSCP GUI 中配置代理 并拥有它为您生成代码模板.
Though a way easier is to configure the proxy in WinSCP GUI and have it generate a code template for you.
这篇关于WinSCP .NET 程序集:在哪里定义代理?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:WinSCP .NET 程序集:在哪里定义代理?
基础教程推荐
- 经典 Asp 中的 ResolveUrl/Url.Content 等效项 2022-01-01
- 全局 ASAX - 获取服务器名称 2022-01-01
- 从 VS 2017 .NET Core 项目的发布目录中排除文件 2022-01-01
- 是否可以在 asp classic 和 asp.net 之间共享会话状态 2022-01-01
- 如何动态获取文本框中datagridview列的总和 2022-01-01
- 在 VS2010 中的 Post Build 事件中将 bin 文件复制到物 2022-01-01
- 将事件 TextChanged 分配给表单中的所有文本框 2022-01-01
- JSON.NET 中基于属性的类型解析 2022-01-01
- 首先创建代码,多对多,关联表中的附加字段 2022-01-01
- 错误“此流不支持搜索操作"在 C# 中 2022-01-01
