2015-05-22 1 views
0

Backgroud: У нашего Call-центра есть специальная программа «Главная», чтобы работать в нем. При входящем вызове появляется «небольшое всплывающее окно». Кроме того, у нас есть браузерный стиль CRM. Все это работает в Windows 7. При входящем вызове клиентская страница в IE загружается. Итак, работник Call Center, чтобы увидеть страницу клиента, нужно щелкнуть на панели задач на вкладке IE. Когда он это делает, открывается окно IE, но «небольшое всплывающее окно» также показано выше. Итак, цель automatete это: работник не хотел, чтобы я нажимал на IE.Переключение между окнами

Теперь код:

GetIeInstance() 
{ 
    For pwb in ComObjCreate("Shell.Application").Windows 
    { 
    If InStr(pwb.FullName, "iexplore.exe") 
    { 
     Return pwb 
    } 
    } 
    Return 0 
} 

ComObjError(false) 

Loop 
{ 
ie := GetIeInstance() 

if (hran != ie.LocationURL) 
    { 
    WinActivate, ahk_class IEFrame 
    WinWaitActive, ahk_class IEFrame 
    } 

hran := ie.LocationURL 

Sleep, 100 
} 

Это понятно: когда мы получили новый вызов дохода (так, новая клиентская страница загружается в IE), Windows сосредоточены на окне IE. Но он работает некорректно, потому что после того, как вторая Windows снова сфокусировалась на окне «Главное» программы (окно IE «мигает»). Добавление

Winset, Alwaysontop, , ahk_class IEFrame 

не помогло. Любая идея, как это исправить? (или как эмулировать щелчок на вкладке IE на панели задач?)

ответ

0

Исправить! Добавление

sleep, 2000 

перед тем

WinActivate, ahk_class IEFrame 

спасти мир

+0

пожалуйста, примите свой собственный ответ, потому что в противном случае госзакупки будут видеть ваш вопрос без ответа – Blauhirn