【问题标题】:Device emulator and FTP, inside a c# mobile application project设备模拟器和 FTP,在 c# 移动应用程序项目中
【发布时间】:2010-10-23 14:02:02
【问题描述】:

对于我用 Visual Studio 2008 开发的 C# 移动应用程序,我正在尝试使用 FTP。 FTP 在真实设备上工作正常,但在我使用设备模拟器时不起作用:连接成功,但在尝试检索数据时失败。两者都使用 windows mobile 5。

你们中的一些人是否已经遇到过这个问题?当我用谷歌搜索时,它似乎是反复出现但尚未解决。

这是ftp服务器显示的日志。

(000001) 04/05/2009 09:50:59 -(未登录)(127.0.0.1)> 已连接,正在发送欢迎消息...

(000001) 04/05/2009 09:50:59 - (未登录) (127.0.0.1)> 220-FileZilla 服务器版本 0.9.31 beta

(000001) 04/05/2009 09:50:59 - (未登录) (127.0.0.1)> 220 FTP 服务器

(000001) 04/05/2009 09:50:59 - (未登录) (127.0.0.1)> USER aa

(000001) 04/05/2009 09:50:59 - (未登录) (127.0.0.1)> 331 aa 需要密码

(000001) 04/05/2009 09:51:00 - (未登录) (127.0.0.1)> PASS **

(000001) 04/05/2009 09:51:00 - aa (127.0.0.1)> 230 登录

(000001) 04/05/2009 09:51:01 - aa (127.0.0.1)> SYST

(000001) 04/05/2009 09:51:01 - aa (127.0.0.1)> 215 由 FileZilla 模拟的 UNIX

(000001) 04/05/2009 09:51:01 - aa (127.0.0.1)> CWD /

(000001) 04/05/2009 09:51:04 - aa (127.0.0.1)> PASV

(000001) 04/05/2009 09:51:04 - aa (127.0.0.1)> 227 进入被动模式 (127,0,0,1,5,22)

(000001) 04/05/2009 09:51:41 - aa (127.0.0.1)> 已断开连接。

【问题讨论】:

    标签: c# visual-studio-2008 windows-mobile ftp


    【解决方案1】:

    您是否尝试过“拥抱”设备模拟器。

    在 Visual Studio 中,转到工具并打开 设备模拟器管理器。从那里您可以右键单击当前运行的设备模拟器并选择 Cradle 以使用 ActiveSync 模拟设备底座。

    我发现当设备模拟器通过“模拟”ActiveSync 连接正确连接到开发 PC 时,我获得了更好的网络结果。此时,您的 PC (169.254.2.2) 和设备 (169.254.2.1) 之间建立了两点 IP 连接。

    【讨论】:

      【解决方案2】:

      自从我使用这种移动设备以来已经有一段时间了,所以我没有真正的解决方案,但也许有一些解释。

      如您所见,问题在进入被动模式后立即出现。如您所见,使用的 ip 地址是 127.0.0.1,甚至可以在被动模式下进行通信(使用使用的端口)。我认为模拟的网络堆栈在这里有一些问题要让这个虚拟连接工作(使用本地主机地址)。所以也许你应该尝试不使用被动模式让它工作。

      另一种深入了解此问题的方法是记录与WireShark 的通信并尝试检查究竟出了什么问题。但是,如果您对 tcp ip 和所有这些东西有更深入的了解,那将是可行的。

      【讨论】:

        猜你喜欢
        • 2015-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-25
        • 1970-01-01
        • 1970-01-01
        • 2014-10-09
        • 2014-12-08
        相关资源
        最近更新 更多