1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | #include <windows.h> #include <Ras.h> void main() { RASENTRY RS; memset(&RS, 0, sizeof(RASENTRY)); RS.dwSize = sizeof(RS); RS.dwfOptions = RASEO_PreviewUserPw | RASEO_ModemLights | // RASEO_PreviewDomain | // отображать поле "Домен" в окне ввода пользователя и пароля (вкладка "Параметры" - установить флажок "Включать домен входа в Windows") RASEO_ShowDialingProgress | // вкладка "Параметры" - Параметры набора номера: установить флажок "Отображать ход подключения" RASEO_RemoteDefaultGateway | // вкладка "Сеть" - "Протокол Интернета (TCP/IP)" - кнопка "Дополнительно" - установить флажок "Использовать основной шлюз в удаленной сети" RASEO_SwCompression | // вкладка "Сеть" - кнопка "Параметры" - установить флажок "Использовать программное сжатие данных" // RASEO_RequirePAP | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Незашифрованный пароль (PAP)" // RASEO_RequireSPAP | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Протокол проверки пароля Shiva (SPAP)" RASEO_RequireCHAP | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Протокол проверки пароля CHAP" // RASEO_RequireMsCHAP | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Протокол проверки пароля Microsoft (MS-CHAP)" // RASEO_RequireW95MSCHAP | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Разрешить старый протокол MS-CHAP для Windows 95" RASEO_RequireMsCHAP2 | // вкладка "Безопасность" - "Дополнительные (выборочные параметры)" - установить флажок "Протокол проверки пароля Microsoft (MS-CHAP v2)" RASEO_SecureLocalFiles; // вкладка "Сеть" - Компоненты, используемые этим подключением: снять флажок "Использовать основной шлюз в удаленной сети"; RS.dwfOptions2 = RASEO2_DontNegotiateMultilink | RASEO2_ReconnectIfDropped; RS.dwfNetProtocols = RASNP_Ip; // протокол Интернета RS.dwFramingProtocol = RASFP_Ppp; // протокол Point-to-Point Protocol RS.dwType = RASET_Broadband; // тип подключения RS.dwVpnStrategy = VS_Default; // вкладка "Сеть" - По умолчанию RS.dwEncryptionType = ET_Optional; // параметры шифрования (ET_None, ET_Require, ET_RequireMax, ET_Optional) RS.dwDialMode = RASEDM_DialAll; RS.dwRedialCount = 99; // число повторов набора номера RS.dwRedialPause = 120; // интервал между повторениями lstrcpy(RS.szLocalPhoneNumber, TEXT("windowsapi.ru")); lstrcpy(RS.szDeviceType, RASDT_PPPoE); // RASDT_PPPoE - обуславливает тип подключения (PPPoE) lstrcpy(RS.szDeviceName, TEXT("PPPoE")); DWORD dwRet = RasSetEntryProperties(NULL,TEXT("PPPoE"), &RS, sizeof(RS), NULL, 0); switch (dwRet) { case ERROR_ACCESS_DENIED: //cout << TEXT("The user does not have the correct privileges. Only an administrator can complete this task."); break; case ERROR_BUFFER_OVERFLOW: //cout << TEXT("The address or buffer specified by lpRasEntry is invalid."); break; case ERROR_CANNOT_OPEN_PROFILE: //cout<<TEXT("The phone book is corrupted or missing components."); break; case ERROR_INVALID_PARAMETER: //cout<<TEXT("The RASENTRY structure pointed to by the lpRasEntry parameter does not contain adequate information. See the description for lpRasEntry to see what information is required."); break; case ERROR_SUCCESS: break; } } |
Архивы по Категориям: RAS API
Программное создание PPPoE подключения
Опубликовал(а): Vital
в: 22 июля 2011
Нет комментариев | 5 474 views