Здравствуйте voterra, Вы писали:
V>Есть проблема, которую я пока не не знаю как решить:
V>Есть стандартное окно Dial-Up connect
V>(вызвать можно его rundll32.exe rnaui.dll,RnaDial <имя соединения>)
V>нужно произвести подмену этого окна своим окном,при этом стандартное окно не должно показываться и появляется. То есть при запуске любого соединения вызывалось мое окно.
V>Искал в MSDN, но похоже что я очень плохо в нем искал, так как ничего путного не нашел.
V>Очень нужна помощь, буду благодарен любым идеям и предложениям, а особенно любым кусочкам кода (желательно для VC++)
В какой ОС? Если в win9x, то прямого пути нет, если только не заменить rundll32 и rundll на свою, которая будет проверять строку и если строка соответствует rundll32.exe rnaui.dll,RnaDial, то подменять на вызов программы, которая рисует окно твоего диалера. Если нет, то передавать строку переименованому rundll32
В win2k дело обстоит проще, там предусмотрены
custom dialer.
Надо написать библиотеку, кторая экспортируес 6 определённых точек входа.
А потом через
RasSetEntryProperties каждому соединению передать RASENTRY, где szCustomDialer (в имени этого поля могу ошибаться) строка с именем/путём к библиотеке с custom dialer
Осталось ерунда-написать библиотеку. Вперёд
Здравствуйте Рома, Вы писали:
Р>Здравствуйте voterra, Вы писали:
V>>Есть проблема, которую я пока не не знаю как решить:
V>>Есть стандартное окно Dial-Up connect
V>>(вызвать можно его rundll32.exe rnaui.dll,RnaDial <имя соединения>)
V>>нужно произвести подмену этого окна своим окном,при этом стандартное окно не должно показываться и появляется. То есть при запуске любого соединения вызывалось мое окно.
V>>Искал в MSDN, но похоже что я очень плохо в нем искал, так как ничего путного не нашел.
V>>Очень нужна помощь, буду благодарен любым идеям и предложениям, а особенно любым кусочкам кода (желательно для VC++)
Р>В какой ОС? Если в win9x, то прямого пути нет, если только не заменить rundll32 и rundll на свою, которая будет проверять строку и если строка соответствует rundll32.exe rnaui.dll,RnaDial, то подменять на вызов программы, которая рисует окно твоего диалера. Если нет, то передавать строку переименованому rundll32
да именно в win9x, я попробовал через перехват Hook CBT -> HCBT_CREATEWND ,но пока все грустно и кажется мне что это глупость что я делаю.
Р>В win2k дело обстоит проще, там предусмотрены custom dialer.
Р>Надо написать библиотеку, кторая экспортируес 6 определённых точек входа.
Р>А потом через RasSetEntryProperties каждому соединению передать RASENTRY, где szCustomDialer (в имени этого поля могу ошибаться) строка с именем/путём к библиотеке с custom dialer
Р>Осталось ерунда-написать библиотеку. Вперёд
Здравствуйте Рома, Вы писали:
Р>Здравствуйте Краснобаев Олег Владимирович, Вы писали:
>>да именно в win9x, я попробовал через перехват Hook CBT -> HCBT_CREATEWND ,но пока все грустно и кажется мне что это глупость что я делаю.
Р>Дело в том, что все вызовы окна диалера идут не напрямую, а через вызов RunDll. Если хочешь, то могу прислать код программы, которой можно заменить rundll. У меня в Win98 это всё нормально работало.
Буду очень благодарен тебе за это.
вот мой е-майл

Заранее большое прибольшое Спасибо.
Р>Дело в том, что все вызовы окна диалера идут не напрямую, а через вызов RunDll. Если хочешь, то могу прислать код программы, которой можно заменить rundll. У меня в Win98 это всё нормально работало.
А можно мне тоже такой код?
Ну очень надо

aleksii САБАКА towndwarf.com