Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.03.14;
Скачать: CL | DM;

Вниз

RasEnumConnections   Найти похожие ветки 

 
StriderMan   (2008-12-26 16:25) [0]

Приветствую, коллеги!

Подключаю в свой проект возможность автоматического создания dialup-соединения. Обнаружил в процессе интересный эффект.

Допустим, создаем соединение при помощи
RasDial(...)

пока оно создается, снимаем задачу нашего приложения. смотрим в диспетчере соединений, у данного соединения статус "Подключение". Винда ничего не позволяет с ним сделать: ни отключить ни подключить. Пытаюсь найти его программно при помощи
RasEnumConnections(...)
- не нахожу, потому как видимо оно еще не подключено. Как быть? как найти и программно оживить или прибить такое соединение? Кто сталкивался?


 
StriderMan   (2008-12-26 16:42) [1]

UPD: если попытаться снова открыть это соединение при помощи RasDial, то получаем ошибку, что соединение уже установлено


 
StriderMan   (2008-12-26 18:24) [2]

UPD2: Собственно проблема свелась к тому, как получить хэндл такого зависшего соединения?
RasEnumConnections нам его не находит, RasDial возвращет ошибку и хэндл оставляет нулевым. Нашел драконовское решение: перебираем всевозможные хэндлы HR и говорим им RasHangUp(HR). Работает, но медленно :)


 
KilkennyCat ©   (2008-12-27 16:07) [3]

а разве при создании соединения у него нет имени?


 
KilkennyCat ©   (2008-12-27 16:10) [4]

то есть, разве нельзя использовать, как сказано в мсдн, rasdial "EAST OFFICE" /d ?


 
StriderMan   (2008-12-28 20:54) [5]

DWORD RasDial(
 LPRASDIALEXTENSIONS lpRasDialExtensions,
 LPCTSTR lpszPhonebook,
 LPRASDIALPARAMS lpRasDialParams,
 DWORD dwNotifierType,
 LPVOID lpvNotifier,
 LPHRASCONN lphRasConn
);


и куда тут передавать East Office? :)
Собственно, с установлением соединения проблем нет, есть проблема с зависшим соединением. Оно легко отрубается при помощи RasHangUp, но нужен Handle. А вот его взять негде.


 
KilkennyCat ©   (2008-12-28 22:43) [6]


> и куда тут передавать East Office? :)

судя по всему, lpszPhonebook


 
StriderMan   (2008-12-29 08:07) [7]

судя по всему, lpszPhonebook
еще раз:
с установлением соединения проблем нет, есть проблема с зависшим соединением


 
KilkennyCat ©   (2008-12-29 10:23) [8]

да я понял. Простро из справки, я так понял, что с какой фонебучной записью соединение создается, то с той и грохается. и это единственная привязка.


 
StriderMan   (2008-12-29 12:04) [9]


> KilkennyCat ©   (29.12.08 10:23) [8]
> да я понял. Простро из справки, я так понял, что с какой
> фонебучной записью соединение создается, то с той и грохается.
>  и это единственная привязка.

phonebook я не использую. Получаю сразу RASDIALPARAMS при помощи RasGetEntryDialParams по имени соединения



Страницы: 1 вся ветка

Текущий архив: 2010.03.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
15-1261863022
Юрий
2009-12-27 00:30
2010.03.14
С днем рождения ! 27 декабря 2009 воскресенье


2-1262713674
Nano-Tek
2010-01-05 20:47
2010.03.14
запрет копирования Explorer у


3-1235995874
Faiwer
2009-03-02 15:11
2010.03.14
Delphi компоненты не хотят работать с пустыми полями


15-1260791003
stas
2009-12-14 14:43
2010.03.14
JScript кроссбраузерность


8-1202845463
Zoom
2008-02-12 22:44
2010.03.14
Audio Stream