You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WinSCP .NET程序集:能否用FTP URL替代主机名参数?

WinSCP FTP连接:IP地址填入HostName的正确方式

完全可以使用IP地址作为HostName参数的值,但不需要包含ftp://前缀。WinSCP的HostName字段仅需填写主机名或纯IP地址,协议类型已经通过Protocol = Protocol.Ftp明确指定,带前缀会导致连接解析错误。

修改后的代码示例如下:

SessionOptions sessionOptions = new SessionOptions
{
    Protocol = Protocol.Ftp,
    HostName = "xxx.xx.xx.xx", // 直接填写纯IP地址,去掉ftp://前缀
    UserName = "user",
    Password = "mypassword",
};

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

using (Session session = new Session())
{
    // Connect
    session.Open(sessionOptions);

    // Upload file
    string localFilePath = @"C:\path\file.txt";
    string pathUpload = "/file.txt";
    session.PutFiles(localFilePath, pathUpload).Check();
}

如果输入完整的ftp://xxx.xx.xx.xx,WinSCP会把整个字符串当作主机名解析,无法识别正确的IP地址,进而导致连接失败,务必只保留纯IP地址部分填入HostName。

内容的提问来源于stack exchange,提问作者Jeff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 05:00:31