Создание PPPoE подключения
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Создание PPPoE подключения Expand / Collapse
Автор
Сообщение
14.11.2006 4:42
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 16.11.2006 2:57
Сообщ.: 4, Visits: 4
можно ли программно создать PPPoE подключение и указать параметры подключения?
Я не имею в виду соединение, а просто создать новое подключение в "Сетевые подключения" и вывести ярлык на рабочий стол
Сообщ. #907419
15.11.2006 3:18
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 16.11.2006 2:57
Сообщ.: 4, Visits: 4
оказывается можно ... вопрос снят
Сообщ. #907491
15.11.2006 10:23
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Ну так приведи решение. Вдруг еще кому-то пригодится.
Сообщ. #907497
16.11.2006 3:04
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 16.11.2006 2:57
Сообщ.: 4, Visits: 4
bazile (15.11.2006)
Ну так приведи решение. Вдруг еще кому-то пригодится.


вот привожу мое решение, не без участия статей из MSDN:

HANDLE hHeap = NULL;
DWORD dwErr = NO_ERROR;
LPRASENTRYDLG lpInfo = NULL;
char * lpszEntry = AnsiToUtf8("наименование_подключения").c_str();

hHeap = GetProcessHeap();

if( NULL == hHeap ){
dwErr = GetLastError();
ShowMessage("GetProcessHeap() failed: Error = " + AnsiString(dwErr));
}
lpInfo = (LPRASENTRYDLG) HeapAlloc( hHeap, HEAP_ZERO_MEMORY, sizeof(RASENTRYDLG));
if( NULL == lpInfo ){
dwErr = ERROR_OUTOFMEMORY;
ShowMessage("HeapAlloc() failed");
}

lpInfo->dwSize = sizeof(RASENTRYDLG);

lpInfo->dwFlags |= RASEDFLAG_NewBroadbandEntry; // флаг автоматического создания подключения (только для NT)
bool nRet = RasEntryDlg(NULL, lpszEntry, lpInfo);

if (nRet == true) {
MessageBox(prg,("Создано новое подключение " + Utf8ToAnsi(lpInfo->szEntry)).c_str(),Form1->Caption.c_str(),MB_ICONINFORMATION);
}
else
{
if (lpInfo->dwError != 0)
MessageBox(prg,("Ошибка создания подключения: " + AnsiString(lpInfo->dwError)).c_str(),Form1->Caption.c_str(),MB_ICONERROR);
}
if( NULL != lpInfo ){
HeapFree( hHeap, 0, lpInfo);
}


ну вот, мож и сыровато, но работает. пользователю при этом только необходимо поддтвердить имя подключения в стандартном диалоге Windows
Сообщ. #907595
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 3:02