防火墙阻止在我的filezilla服务器上传文件

时间:2015-12-07 14:20:08

标签: c# filezilla

我正在尝试设置filezilla服务器。我已按照here的说明进行操作。我编写了一个简单的c#脚本,以便将数据上传到服务器。我的代码如下:

static void UploadFile(string filepath)
{
    string m_FtpHost = "ftp://ip:port/";
    string m_FtpUsername = "user";
    string m_FtpPassword = "pass";

    // Get an instance of WebClient
    WebClient client = new System.Net.WebClient();
    // parse the ftp host and file into a uri path for the upload
    Uri uri = new Uri(m_FtpHost + new FileInfo(filepath).Name);
    // set the username and password for the FTP server
    client.Credentials = new System.Net.NetworkCredential(m_FtpUsername, m_FtpPassword);
    // upload the file asynchronously, non-blocking.

    client.UploadFileAsync(uri, "STOR", filepath);
}

当我从同一台计算机上运行该脚本时,一切正常。当我试图从同一局域网的另一台计算机上运行相同的脚本时,我遇到了问题。该文件没有正确发送。当我关闭防火墙时,上传正在正常进行。知道如何克服防火墙吗?

1 个答案:

答案 0 :(得分:1)

通常,Windows要求用户在尝试使用任何端口时授予程序权限(Windows get弹出,要求允许或禁止程序使用该端口)... 我不知道怎么做,但我发现了一个链接...

  

我不确定公开这个对话需要满足哪些条件,我   将假设一个试图打开监听端口的应用程序   一个vanilla Windows实例应始终显示此对话框。为什么   你不尝试将你的应用程序添加到'授权的应用程序'   列表,或使用Windows防火墙COM手动打开端口   interop(NetFwTypeLib)?

     

http://blogs.msdn.com/b/securitytools/archive/2009/08/21/automating-windows-firewall-settings-with-c.aspx

引自alexw