Q> Как разорвать
соединение?
A>
bool HangUp()
{
RASCONN ras[20];
DWORD dSize, dNumber;
char szBuf[256];
ras[0].dwSize = sizeof( RASCONN );
dSize = sizeof( ras ); // Get active RAS - Connection
DWORD dwRet = RasEnumConnections( ras, &dSize, &dNumber
);
if ( dwRet != 0 )
{
if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS Enum Connections
error (%ld).", dwRet
);
MessageBox( (LPSTR)szBuf, "RasHangUp", MB_OK |
MB_ICONSTOP );
return false;
}
bool bOK = true;
for( DWORD dCount = 0; dCount < dNumber; dCount++ )
{ // Hang up that connection
HRASCONN hRasConn = ras[dCount].hrasconn;
DWORD dwRet = RasHangUp( hRasConn );
if ( dwRet != 0 )
{
char szBuf[256];
if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS HangUp Error
(%ld).", dwRet );
MessageBox( (LPSTR)szBuf, "RasHangUp", MB_OK |
MB_ICONSTOP );
bOK = false;
}
}
return bOK;
}