Windows XPe RAS错误756“正在拨号连接”

| 我正在使用rasapi32.dll中的API函数RasDial处理已设置RAS条目的嵌入式系统。 一切正常,除非在RasDial之后和RasHangUp之前出现问题。在这种情况下,无论是通过API还是通过Windows rasdial命令行实用程序进行拨号尝试,都将发生错误756“正在拨号连接”,从而进行任何进一步的拨号尝试。 rasdial connectionname / d也不起作用。 用于调制解调器的com端口已锁定。 恢复的唯一方法是重新启动。 显然,在正常情况下,解决方案是确保RasDial始终跟随RasHangUp。但是对于没有发生这种情况的情况,是否可以中止拨号尝试?例如,如果应用程序调用RasDial,然后崩溃了,除了重新启动之外,我如何才能摆脱困境?     
已邀请:
        不幸的是,除非您的应用程序能够在退出RAS状态机之前正确终止正在进行的连接,否则它会损坏并且必须重新启动才能解决问题。我已经注意到Windows 7在处理这类情况方面要比XP和Vista更好,但是仍然有一些情况我不得不重新启动。 只要在RasDialer的事件处理程序中发生了此类错误,我就设法避免了DotRas API的大多数此类问题,但是如果应用程序从另一个线程而不是从后台线程崩溃而导致崩溃, RasDialer事件,对此我无能为力。 对于使用DotRas 1.2 SDK的异步拨号:
using DotRas;

RasDialer dialer = new RasDialer();
dialer.EntryName = \"My Connection\";
dialer.Credentials = new NetworkCredential(\"My\", \"User\");
dialer.DialAsync();
此时,如果您要取消正在进行的连接尝试,则可以调用Dialer.DialAsyncCancel()。 使用DotRas 1.2 SDK进行同步拨号与异步拨号非常相似,除了使用简单的dialer.Dial()代替DialAsync调用外。 这是我正在谈论的API的链接:http://www.codeplex.com/DotRas 希望有帮助!     

要回复问题请先登录注册