我使用 .NET 4.0 创建了一个自定义 FTP 服务器。我在同一台 Windows 7 机器上运行客户端和服务器,并且我的防火墙被完全禁用。我可以使用 FileZilla 和 FtpUse 连接到它,建立 PASV 模式,并浏览文件夹的内容就好了。尝试通过 Windows 资源管理器连接时出现问题。我可以成功登录,但是当资源管理器发送 PASV 命令时(请参阅下面的客户端/服务器交换),资源管理器会弹出一个消息框,显示“FTP 文件夹错误”、“在 FTP 服务器上打开该文件夹时发生错误。请确保您有权访问该文件夹”。下面的详细信息是它从服务器收到的最后两个响应。我发现了这个(http://support.microsoft.com/kb/2754804/en-us) 更新并安装它,但它没有帮助。有人知道这可能是什么吗?我在从 PASV 命令返回响应之前打开 TCP 侦听器,所以我认为这不是时间问题。
<< 220 ***********.
>> USER Domain\******
<< 331 Password required.
>> PASS *******
<< 230 Domain\****** logged in.
>> opts utf8 on
<< 200 OPTS UTF8 command successful - UTF8 encoding now on.
>> syst
<< 215 Windows_NT.
>> site help
<< 200
<< 200 End of help.
>> PWD
<< 257 "/".
>> TYPE A
<< 200 Type set to A.
>> PASV
<< 227 Entering Passive Mode (10,0,0,4,7,100)