代码之家  ›  专栏  ›  技术社区  ›  moster67

.NET-如何获取程序中错误的更多信息?错误:“线程0x566967f6已退出,代码为0(0x0)”

  •  0
  • moster67  · 技术社区  · 17 年前

    也许你能帮我。。。

    here . 我正在使用VS2008(在VB.NET中)和设备模拟器。

    我可以毫无问题地连接并执行各种命令(例如登录、STAT、LIST、TOP)。但是,当我使用RETR命令下载电子邮件时,过了一段时间后,我发现了一个无法跟踪的错误。如果我检索一封短电子邮件,它通常会毫无问题地下载数据。但是如果我试图检索一封带有附件的电子邮件(需要传输的字节数更多),我通常会收到70-80000字节的“错误”。然而,当在我的真实设备上运行应用程序时,我仍然会得到一个错误,但通常会出现400-500000的错误,尽管有时会更早。

    在桌面上运行此应用程序(同一个第三方套接字,但另一个.dll)不会出现任何问题。我可以轻松下载巨大的附件。我怀疑这与网络问题有关,例如使用Pocket Outlook从同一邮件服务器下载带有附件的电子邮件。

    我相信该问题与DLL库(基于ATL的COM库)有关,或者更可能与我对该库的编码方式有关,但在写信给他们之前,我想看看是否可以将该问题追溯到该库,以及它可能导致我的错误/问题的原因。这样,我可以在给他们写信时提供更多的信息。所以,我只是想知道在VS2008中是否有一种方法可以让我获得更多关于我的问题/错误的信息?非常感谢。

    1 回复  |  直到 17 年前
        1
  •  3
  •   Spencer Ruport    17 年前

    退出代码0表示未发生错误,线程正常终止。如果它不应该终止,试着弄清楚它在什么条件下可以终止,并弄清楚哪个条件允许线程过早退出。

    我能想到为什么这可能发生在移动设备上而不是桌面上的唯一原因是与缓冲区有关。我的猜测是,较小、较慢的设备很难跟上传入数据的速度,因此缓冲区被覆盖。

    推荐文章