#include <ras.h>#include
<raserror.h>
...........
RASDIALPARAMS rdParams; // Параметры для RAS
HRASCONN hRasConn;
// Информация о
соединении
..............
//----------------------------------------------------------------------
//
Удаленный доступ
bool
TForm1::DialUp(TObject
*Sender)
{
rdParams.dwSize = sizeof(RASDIALPARAMS);
rdParams.szEntryName[0]
= '\0';
lstrcpy( rdParams.szPhoneNumber,
Phone.c_str());
rdParams.szCallbackNumber[0] = '\0';
lstrcpy(
rdParams.szUserName, LoginI.c_str());
lstrcpy(
rdParams.szPassword, Password.c_str());
rdParams.szDomain[0] =
'\0';
hRasConn = NULL;
DWORD dwRet
= RasDial( NULL, NULL, &rdParams, 0L, NULL, &hRasConn );
if ( dwRet == 0 )
return
true;
char
szBuf[256];
if ( RasGetErrorString(
(UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS Dial Error (%ld).", dwRet );
RasHangUp( hRasConn
);
MessageDlg((LPSTR)szBuf, mtError, TMsgDlgButtons() << mbOK, 0);
return false;
}
//-------------------------------------------.................
//
набрать номер
if (!DialUp(this)) {
ConnectBar->SimpleText =
"Соединение НЕ установлено";
return;
}
//
Проверить состояние
RASCONNSTATUS rs;
rs.dwSize = sizeof(RASCONNSTATUS);
RasGetConnectStatus(hRasConn, &rs);
if (rs.rasconnstate ==
RASCS_Connected)
ConnectBar->SimpleText = "Соединение
установлено";
...............
// Разорвать
связь
RasHangUp(hRasConn);
..............
|
|
|