S
someset
Unregistered / Unconfirmed
GUEST, unregistred user!
我用RasDial拨号,常常会发生这样的错误
"连接失败,因为没有找到调制解调器(或其它连接设备)。请确认安装了调制解调器(或其它连接设备)。"RasDial返回错误号码797。
一会儿可能又正常了。因为我的程序是会不断重新试图拨号的,一次没成功往往(并非绝对)后面几次都不成功。可是用系统的拨号功能成功率就比我的程序高得多,至少不会说找不到调制解调器。问题会出在哪儿呢?
我的部分代码如下,异步调用
DWORD __fastcall RasConnUtil::SynthRasDial(LPRASDIALPARAMS lpparams)
{
RasStatus = RasDial(NULL, NULL, lpparams, 0, RasDialFunc, &hrasconn);
if (RasStatus != 0)
return RasStatus;
RasStatus = 0xffffffff;
while (RasStatus == 0xffffffff)
{
SendMessage(NotifyWnd, NotifyMsg, 0, 0);
};
return RasStatus;
}
void WINAPI RasConnUtil::RasDialFunc(UINT unMsg, RASCONNSTATE rasconnstate, DWORD dwError)
{
if (dwError != 0)
RasStatus = dwError;
else
if (rasconnstate == RASCS_Connected)
RasStatus = 0;
}
"连接失败,因为没有找到调制解调器(或其它连接设备)。请确认安装了调制解调器(或其它连接设备)。"RasDial返回错误号码797。
一会儿可能又正常了。因为我的程序是会不断重新试图拨号的,一次没成功往往(并非绝对)后面几次都不成功。可是用系统的拨号功能成功率就比我的程序高得多,至少不会说找不到调制解调器。问题会出在哪儿呢?
我的部分代码如下,异步调用
DWORD __fastcall RasConnUtil::SynthRasDial(LPRASDIALPARAMS lpparams)
{
RasStatus = RasDial(NULL, NULL, lpparams, 0, RasDialFunc, &hrasconn);
if (RasStatus != 0)
return RasStatus;
RasStatus = 0xffffffff;
while (RasStatus == 0xffffffff)
{
SendMessage(NotifyWnd, NotifyMsg, 0, 0);
};
return RasStatus;
}
void WINAPI RasConnUtil::RasDialFunc(UINT unMsg, RASCONNSTATE rasconnstate, DWORD dwError)
{
if (dwError != 0)
RasStatus = dwError;
else
if (rasconnstate == RASCS_Connected)
RasStatus = 0;
}