OpenNETCF.Net.Ftp表现片状

时间:2009-08-14 00:27:32

标签: compact-framework ftp

我尝试在他们的主板上发帖(这个图书馆的作者),但是在谈到自由软件时,他们需要几个月才能回复(不能责怪他们)。

但无论如何 我发现这个库表现得很奇怪 - 例如,我的应用程序的一个主要问题是当有人试图登录(通过FTP)时,他们提供正确的登录并输错密码,没有从FTP服务器收到回复。

我尝试从命令窗口执行相同操作,只是为了验证它不是FTP服务器的错误;和FTP命令是即时收到的。

这看起来好像这个库吃掉了命令。同样的行为经常会产生不同的结果。

任何人都可以推荐一个稳定,可靠的库与Compact框架一起使用吗?或者对这个问题有所了解......?

2 个答案:

答案 0 :(得分:1)

我在ConnectThread()中修改了源代码,如下所示:

// if a PWD is required, send it
            if( response.ID == 331 )
            {

                response = SendCommand("PASS " + m_pwd, false);

                //ADDED THIS - try again.
                if (response.ID == 0)
                {
                    response = SendCommand("PASS " + m_pwd, false);
                }
                //end of my addition

                if( !((response.ID == 202) || (response.ID == 230)) )
                {
                    m_cmdsocket.Close();
                    m_cmdsocket=null;
                    Disconnect();
                    m_connected = false;
                    return;
                    }
}

这解决了这个问题一段时间,直到现在它再次开始这样做,罪魁祸首似乎是当0作为来自FTP服务器的响应回来时,连接就停止了。我不确定这是一个套接字问题还是其他一些模糊不清的问题,但我想我现在会放弃。

答案 1 :(得分:0)

您使用的是哪个FTP集,SDF中的基于流的类,还是separate one in the Forums?如果您正在使用论坛中的那个(我实际推荐的那个),那么您就拥有了源代码。我通过RFC看不到任何东西从头开始编写了这个。这真的非常非常简单,如果它正在“吃”响应,它可能是一个超时问题,尽管它应该很容易放在一个断点并看看它在哪里分开。