как из Excel открыть окно ICQ-клиента для поиска конкретного пользователя?

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

&quot писал(а):Для ICQ проверка запуска не нужна... первый shell запускает и активизирует ICQ, а повторный только активизирует (ошибки не возникает, если ICQ уже запущен). Код запуска по shell я представлял в начале.

С кип я не знаком... извините, не смогу помочь.
Да.К сожалеию ни на одном форуме мне не сказали больше чем вы. Поэтому я и задаю столько вопросов здесь и вам-)
И мой вопрос немного остался не понятен.

И все таки как работает эта процедура AppActivate? Какая разница кип,не кип.ВЕзде одинаково!Как же мне ее использовать для активации приложения, если оно активировано непосредственно пользователем, а не с помощью кода(Shell)
Genyaa
Сообщения: 310
Зарегистрирован: 11 окт 2006, 17:24
Откуда: Moscow
Контактная информация:

LOKI-85 писал(а):У метода AppActivate один из параметоров как я поняла идентификатор, возвращаемый функцией Shell.Как же его тогда получить, если я пытаюсь активировать приложение без запуска Shell?
На самом деле параметром может быть не обязательно код от shell, но и имя приложения. Имя, под которым можно активизировать приложение с помощью AppActivate, часто совпадает с именем этого приложения, видимого в списке приложений Диспетчера Задач (<Ctrl+Shift+Esc>). Кроме того VBA (как мне помнится, но я могу ошибаться) предлагает в Help пример получения имен (и их номеров) всех запущенных в данный момент приложений (если нет, то уверен, что где-то в интернете это было и довольно просто).
А через браузер я попробовала,но там не работает почему то ссылка добавить в контакт..либо что то скачиваться начинает,либо вообще ничего не происходит.Как работать?
Терпеливо экспериментировать.
Всякое решение плодит новые проблемы.
LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

&quot писал(а):Терпеливо экспериментировать
Дело не в эксперименте, а в том что система браузерная на icq.com не срабатывает.

Выяснилось в итоге, что кип на низком уровне перехватывает команды и SendKey просто напросто не работает для нее. Кто что может посоветовать как альтернативу?
LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

На данный момент решила пока остановится на браузере...Код:
n = Shell("C:\Program Files\Internet Explorer\IEXPLORE.EXE" & " " _
& "http://people.icq.com/people/about_me.php?uin=" & User)
Application.Wait Now() + TimeSerial(0, 0, 5)
SendKeys "^f", True
Application.Wait Now() + TimeSerial(0, 0, 5)
SendKeys "My ICQ Contact List{ENTER}{TAB}", True
Application.Wait Now() + TimeSerial(0, 0, 5)
SendKeys "{ENTER}", True

Как же кликать на ссылку add my ICQ contactlist?
В коде все ок, только он находит нужную мне ссылку, а кликать как на нее я не знаю. SendKeys "{ENTER}", True - тоже не работае, он лишь кликает на окно поиска найти, адольше опять тупик.Помогите, Genyaa! Если я вас не совсем достала-))
Genyaa
Сообщения: 310
Зарегистрирован: 11 окт 2006, 17:24
Откуда: Moscow
Контактная информация:

Попробуйте разнести эту строку:

SendKeys "My ICQ Contact List{ENTER}{TAB}", True

на две

SendKeys "My ICQ Contact List{ENTER}", True
SendKeys "{TAB}", True

если сразу не получится, добавьте еще небольшую паузу между ними.
Всякое решение плодит новые проблемы.
LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

Находить то он находит нужное мне слово и выделяет его!!!Но по копке Tab ничего не сворачиваетя. Даже вручную...Тут похоже дело не в коде, а в клавишах-)))
Genyaa
Сообщения: 310
Зарегистрирован: 11 окт 2006, 17:24
Откуда: Moscow
Контактная информация:

Странно... что значит слово "сворачивается"? ничего сворачиваться и не должно. По таблуции после поиска слова на странице должна выделиться гиперссылка, отвечающая за эту команду (у меня это видно тонкой рамочкой, показывающей выделенную гиперссылку). Попробуйте сделать все вручную:

Сначала поиск, потом табуляция. Что будет?

Если выделение нужной гиперссылки происходит - то следует нажать на Ввод или пробел, чтобы перейти по этой гиперссылке - это и должно быть в коде процедуры далее по ходу.

Если выделения не происходит - то... это странно... никогда с этим не сталкивался.
Всякое решение плодит новые проблемы.
LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

Выделение происходит,но как открыть то эту гиперссылку.Вы пробовали? У меня вречную не получается, куда уж там автоматом.
LOKI-85
Сообщения: 120
Зарегистрирован: 15 янв 2007, 17:34

В опере(браузере) открывается с помощью пробела..а вот в Internet Exporer нет!
Вы где открываете?
Genyaa
Сообщения: 310
Зарегистрирован: 11 окт 2006, 17:24
Откуда: Moscow
Контактная информация:

Я открываю в IE - все нормально открывается по Enter или пробелом.
Всякое решение плодит новые проблемы.
Ответить