Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
Страниц: [1] 2 3 4 ... 10
 1 
 : 17-09-2018 08:10 
Автор VladimirT - Последний ответ от VladimirT
Кибор - интегрированная среда для создания программ автоматизации действий на компьютере.
http://kibor-bot.com/kibor_set.rar


Создание сценариев возможно как с помощью Си образного языка, имеющего в своем арсенале более 100 функций анализа экрана, идентификации на нем различных объектов, распознавания текста, работы с окнами и контролами приложений, работы с памятью процессов, эмуляции действий клавиатуры и мыши, работы с интернетом и т.д.  Так и с помощью Визуального редактора кода, который не требует от пользователя знаний языка программирования.

Это делает Кибор пригодным к использованию как опытным программистом, так и пользователю далекому от программирования, так как создание сценариев возможно с помощью наглядных блок схем алгоритма работы программы, которые потом транслируются в программный код.

При запуске программы появляется главное окно, открытое на вкладке Код. При написание кода возможно кроме спец функций использование Api.


Перейдя на вкладку Шпион, пользователь может использовать инструмент позволяющий получать параметры окон и контролов приложений, в котором будет осуществляться автоматизация.


На вкладке Графика возможно проанализировать экран на наличие динамичных зон, узнать наиболее подходящие настройки функций анализа экрана с учетом изменения яркости или формы объекта и подготовить все нужные шаблоны для использования их в скрипте.


Работа с Визуальным редактором кода Кибор интуитивно понятна. Логика строится с помощью настраиваемых блоков и установлением переходов между ними по принципу Истина/Ложь.
Так же есть инструмент быстрого создания блок схем, работа которого происходит таким образом:
Пользователь запускает запись действий и программа записывает и генерирует нужные блоки для Визуального редактора в зависимости от действий. В этом режиме возможно создание и настройка блоков работы с клавиатурой и мышью, идентификации объектов и распознавания текста. После остановки записи эти блоки переносятся в Визуальный редактор и пользователь строит с них алгоритм работы программы соединяя в нужной последовательности и логике.


Кибор имеет встроенный модуль распознавания текста OCR, позволяющий указывать в скрипте зону экрана с которой будет распознаваться текст и использовать его в программе.
Имеется инструмент настройки и обучения данной функции.


В наличие сервис для фрилансеров. Инструмент загрузки скриптов на сервер позволяет давать доступ к использованию их другим пользователям в демо режиме ограниченное количество времени,без возможности увидеть и сохранить  скрипт. Возможность генерировать запускаемые exe файлы позволяют распространять свои скрипты в демо режиме без установки Кибор на машине пользователя.
Панель управления лицензированием дает возможность разработчику скрипта продлить использование скрипта выборочным пользователям по уникальному ключу.



 2 
 : 14-09-2018 22:52 
Автор demon051 - Последний ответ от RXL
А нафига "поток со слипами"? Посмотри на событийные циклы (event loop). Будь у тебя хоть сто таймеров, можно найти время от сейчас до следующего и обойтись одним таймером и одним потоком. Не нужно сто потоков и сто таймеров. В циклами событий главное не увлекаться вычислениями, можно как раз переносить их в потоки. А для коротких действий это очень эффективно.

 3 
 : 14-09-2018 11:53 
Автор Ned - Последний ответ от Ned
Спасибо!

 4 
 : 14-09-2018 09:48 
Автор Ned - Последний ответ от HandKot
..
И вообще хотелось бы выводить без DataSet. Используя только DataTable. Может, что посоветуете?

У Вас немного нет понимания.
DataTable заполнить запросом нет возможности, по-моему.
Если он создается руками, то руками и создаются в нём колонки и прочее

в Вашем случае, просто подкорректируйте код

Код:
OleDbConnection conn = new OleDbConnection(connString);
            conn.Open();

            OleDbCommand myCommand = conn.CreateCommand();
            myCommand.CommandText = commText_SemCN3;

            DataTable dt = new DataTable();
            DataSet ds = new DataSet();

            OleDbDataAdapter dataAdapter = new OleDbDataAdapter(commText_SemCN3, connString);
            dataAdapter.Fill(ds, "SemCN3");
           
            OleDbDataReader reader = myCommand.ExecuteReader();


            dt = ds.Tables["SemCN3"]

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                var row = dt.Rows; //
            }

 5 
 : 14-09-2018 09:40 
Автор demon051 - Последний ответ от demon051
Это не realtime, не стоит ждать каких-то задержек. "Выйдет вовремя и прибудет в срок!"
Скорее надо бороться с первопричиной такого желания, чем искать способ задержки отправки. Если получателю нужна задержка, пусть сам ее и реализовывает. Ну, а если изменить получателя нельзя, сделай сам.
Что это ха алгоритм такой?

алгоритм подтверждения доступа Улыбаюсь на подтверждение дается некоторое время, если человек не успел, то система должна сама через некий таймаут или разрешить или запретить - как настроено.
таймеров уже хоть опой ешь в системе. поток со слипами не нравится.
думал может можно по хитрому сигнал пульнуть, чтобы он через этот таймаут пришел и обработался.

 6 
 : 14-09-2018 07:43 
Автор Ned - Последний ответ от RXL
Порядок строк в реляционных базах не гарантирован. В запросе указываешь нужную сортировку: ORDER BY ID

 7 
 : 14-09-2018 07:41 
Автор Ned - Последний ответ от Ned
сделал так:
            OleDbConnection conn = new OleDbConnection(connString);
            conn.Open();

            OleDbCommand myCommand = conn.CreateCommand();
            myCommand.CommandText = commText_SemCN3;

            DataTable dt = new DataTable(@"D:\VC10\ReferenceManualOfElements.mdb\SemCN3");
            DataSet ds = new DataSet();

            OleDbDataAdapter dataAdapter = new OleDbDataAdapter(commText_SemCN3, connString);
            dataAdapter.Fill(ds, "SemCN3");

            OleDbDataReader reader = myCommand.ExecuteReader();

            for (int i = 0; i < ds.Tables["SemCN3"].Rows.Count; i++)
            {
                var row = ds.Tables["SemCN3"].Rows; //
            }

все получилось, но выводит сначала последнюю строку потом первую, вторую ...Нужно что бы сначала первую... Что здесь может быть не так?
И вообще хотелось бы выводить без DataSet. Используя только DataTable. Может, что посоветуете?

 8 
 : 14-09-2018 07:33 
Автор demon051 - Последний ответ от RXL
Это не realtime, не стоит ждать каких-то задержек. "Выйдет вовремя и прибудет в срок!"
Скорее надо бороться с первопричиной такого желания, чем искать способ задержки отправки. Если получателю нужна задержка, пусть сам ее и реализовывает. Ну, а если изменить получателя нельзя, сделай сам.
Что это ха алгоритм такой?

 9 
 : 14-09-2018 06:37 
Автор demon051 - Последний ответ от darkelf
можно при помощи pthread-ов и sleep()-ов, но не уверен, что это правильный выбор.

 10 
 : 14-09-2018 06:23 
Автор demon051 - Последний ответ от demon051
как вариант - отсылать сигнал при помощи таймера.
да это-то понятно.
но может быть есть каие-то иные штатные механизмы отложенной отправки?

Страниц: [1] 2 3 4 ... 10
Powered by SMF 1.1.21 | SMF © 2015, Simple Machines