Можно ли как-то программно запустить созданное с попомщью RAS API
удаленное соединение, передав ему логин и пароль,
а когда программа закончит сеанс, снова очистить логин и пароль
и отключить его.
Здравствуйте alias, Вы писали:
A>Можно ли как-то программно запустить созданное с попомщью RAS API A>удаленное соединение, передав ему логин и пароль, A>а когда программа закончит сеанс, снова очистить логин и пароль A>и отключить его.
Запуск соединения
DWORD RasDial(
LPRASDIALEXTENSIONS lpRasDialExtensions, // pointer to function extensions data
LPTSTR lpszPhonebook, // pointer to full path and filename of phone-book file
LPRASDIALPARAMS lpRasDialParams, // pointer to calling parameters data
DWORD dwNotifierType, // specifies type of RasDial event handler
LPVOID lpvNotifier, // specifies a handler for RasDial events
LPHRASCONN lphRasConn // pointer to variable to receive connection handle
);
В структуре pRasDialParams нужно указать имя содинения и задать нужные параметры на данный сеанс, в том пароль и юзера. Естественно эти параметры нигде не сохраняются. См. ниже
typedef struct _RASDIALPARAMS {
DWORD dwSize;
TCHAR szEntryName[RAS_MaxEntryName + 1]; //имя соединения
TCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; //номер телефона
TCHAR szCallbackNumber[RAS_MaxCallbackNumber + 1]; //номер для обратного вызова
TCHAR szUserName[UNLEN + 1]; //имя пользователя
TCHAR szPassword[PWLEN + 1]; //пароль
TCHAR szDomain[DNLEN + 1] ;
#if (WINVER >= 0x401)
DWORD dwSubEntry;
DWORD dwCallbackId;
#endif
} RASDIALPARAMS;
Если пишешь на Builder, у меня имеется достаточно удобный компонент-оберка вокруг RasDial. Его можно скачать с моей странички http:\\bcdev.narod.ru