Кибор » Кибор - Интегрированная среда разработки ботов » О программе Кибор » Версия 5.84 Доработка функции window. Поиск одновременно множества окон и запись в массив

Страниц (1): [1]
 

1. Kibor - 15 Марта, 2021 - 13:40:16 - перейти к сообщению
Доработана функция window - Функции для идентификации окон и контролов

Добавлен не обязательный первый параметр.
В виде этого параметра можно добавить указатель на массив win.
В этом случае функция window найдет все окна присутствующие в системе, соответствующие параметрам поиска, получит на них указатели которые запишет в массив win и заполнит его структуры для всех окон.
В таком случае функция возвращает количество найденных окон, или -1 если размер массива менее количества окон. Выделять надо с запасом.

Пример:
CODE:
win w[5];
int k=window (#w[0], "Безымянный — Блокнот", "Notepad", -1);
messagebox(k);
for (int n=0; n<k; n++)
{
messagebox(w.left[n]);
messagebox("HWND "+format(formatwi(w[n])));
}


Использование функции без указателя первым параметром на указатель win не изменилось.
2. Zireael - 15 Марта, 2021 - 17:37:47 - перейти к сообщению
Если массив недостаточного размера, то будет вылет.
3. Kibor - 15 Марта, 2021 - 18:55:24 - перейти к сообщению
 Zireael пишет:
Если массив недостаточного размера, то будет вылет.

Естественно.
Сделал что возвращает -1 тогда.
4. ivantu - 16 Марта, 2021 - 03:35:14 - перейти к сообщению
После этой обновы посыпались краши... в частности при назначении окно.

CODE:
win w=window ("BlueStacks Android PluginAndroid", -1, window ("BlueStacks", -1, -1));
5. Kibor - 16 Марта, 2021 - 04:24:09 - перейти к сообщению
 ivantu пишет:
После этой обновы посыпались краши... в частности при назначении окно.


Исправил. Баг возник при добавление возврата с функции -1 при малом размере массива.
6. Skycrew - 18 Марта, 2021 - 09:37:18 - перейти к сообщению
Полезная вещь!

Powered by ExBB FM 1.0 Final