我有一个在远程设备上运行的软件,它调用InternetDial来建立连接并报告信息。
大多数情况下,这种方法工作得很好,但偶尔会出现某种错误(坏信号等)。尽管用INTERNET_AUTODIAL_FORCE_UNATTENDED调用了这个函数,但当它连接失败时,窗口仍然会弹出对话框。
令人恼火的是,这些对话框都是模态的,所以代码就会被锁住。
我尝试了网络配置上的几乎所有选项组合和调用InternetDial例程的方法,但它们都不能阻止该对话框的出现:
m_DResult = InternetDial(NULL, m_staticModemProfile, INTERNET_AUTODIAL_FORCE_UNATTENDED, (LPDWORD) &m_cnx, NULL);
m_DResult = InternetDial(NULL, NULL, INTERNET_AUTODIAL_FORCE_UNATTENDED, (LPDWORD) &m_cnx, NULL);
m_DResult = InternetDial(NULL, NULL, INTERNET_DIAL_UNATTENDED, (LPDWORD) &m_cnx, NULL);
m_DResult = InternetDial(NULL, m_staticModemProfile, INTERNET_DIAL_UNATTENDED, (LPDWORD) &m_cnx, NULL);有什么办法可以解决这个问题吗?或者我可以用另一种方式进行连接?我正在Vista和XP Embedded上进行开发,如果这样做会有所不同的话。
发布于 2011-06-13 09:16:41
我今天刚遇到这个问题,下面的代码解决了我的问题。使用InternetAutodial而不是InternetDial
BOOL result = InternetAutodial(INTERNET_AUTODIAL_FORCE_UNATTENDED, NULL);https://stackoverflow.com/questions/3142322
复制相似问题