|
VBA EXCEL и RAS API. Как установить коннект через Dial-Up?
|
|||
---|---|---|---|
#18+
Привет! Столкнулся с необходимостью выполнить следующие задачи, связанные с удаленным соединением: 1. Проверить наличие и статус удаленного соединения; 2. Если статус соединения- "разъединено", то выполнить коннект. 3. При необходимости разорвать соединение. Перерыл много форумов и вышел на функции RAS API. Удалось решить вопросы 1(используя функции RasEnumConnections и RasGetConnectStatus) и 3 (используя функцию RasHangUp). Т.е. теперь я могу узнать, что соединение физически существует и оно соединено/разорвано. Могу его разорвать принудительно. Но вот никак не разберусь с функцией RasDial, которая устанавливает соединение. Мне достаточно использовать параметры соединения по умолчанию, необходимо только правильно задать переменные для этой функции, с чем, подозреваю, у меня проблемы. К сожалению, я не программирую в Delphi или С++, а все примеры по использованию функций RAS API прописаны, в основном, на этих языках. Прошу знающих людей помочь с кодом VBA для вызова функции RasDial и установлением соединения. P.S. Как вариант, рассматриваю возможность оперировать с соотв. окнами через API-функции, но это как-то коряво, учитывая, что они опять же, сами используют RAS API в своей работе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2013, 05:05 |
|
VBA EXCEL и RAS API. Как установить коннект через Dial-Up?
|
|||
---|---|---|---|
#18+
думаю, если вы приведете примеры на Си (используя тэги оформления кода именно для Си и спойлер, если большая простыня), вам помогут с переводом ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2013, 10:51 |
|
VBA EXCEL и RAS API. Как установить коннект через Dial-Up?
|
|||
---|---|---|---|
#18+
Итак, после пары недель мучений имею следующее : UserForm со списком доступных соединений и кнопку "Dial" для дозвона выбранного соединения. Корректно определяются доступные соединения, однако при попытке дозвона функция RasDial возвращает 0 (типа подключился), но вот статус соединения остается неизменным- фактически связи нет. При этом, если попытаться позвонить еще раз, то выходит ошибка 623- "подключение уже выполнено". Та же ошибка выходит при попытке подконнектиться штатной звонилкой. Есть кнопка "позвонить", но при нажатии соединение как бы занято. Как только я закрываю EXCEL, сразу становится возможным дозвон из штатной звонилки. Заметил, что фукция RasGetEntryDialParams при вызове хоть и возвращает 0 (норма), но структуру RASDIALPARAMS почему-то не заполняет данными, типа телефонного номера и пароля. Перед вызовом функции RasDial я просматриваю структуру RASDIALPARAMS. .szEntryName содержит имя выбранного соединения, но вроде этого и достаточно, остальное должно подхватываться по умолчанию из телефонной книги... Ребята, объясните, где я накосячил?)) P.S. Винда 7 64bit Код: vbnet 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. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103.
Модератор: Учимся использовать тэги оформления кода и спойлеры для длинных простыней - FAQ ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2013, 00:52 |
|
VBA EXCEL и RAS API. Как установить коннект через Dial-Up?
|
|||
---|---|---|---|
#18+
Специалисты,где же вы, ну поделитесь идеями! )) Я не могу понять, это проблема кода или все же проблема платформы? К сожалению, проверить на XP я не могу, мобильный интернет только на работе, дома LAN.... Перелопачивая исходники и анализируя их, отметил, что иногда приходится проверять, на какой платформе будет работать код, и соответственно, менять значения переменнных. К сожалению, исходники уже не новые, 7ки тогда еще не было))). Поэтому я начинаю думать, что код, отлично работающий под XP, на 7ке работает уже некорректно. Например, я не могу получить ни номера соединения, ни пароля (пусть хоть ввиде звездочек), ни остальных параметров соединения. Поэтому как задачу-минимум, хочу всего лишь установить соединение, выбранное по умолчанию без каких-либо изменений его параметров. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2013, 12:07 |
|
|
start [/forum/topic.php?fid=60&msg=38453907&tid=2156685]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 18ms |
total: | 164ms |
0 / 0 |