Russian Qt Forum
Ноябрь 24, 2024, 15:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Как в Qt сделать программную эмуляцию нажатия клавиатуры?  (Прочитано 23265 раз)
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #15 : Март 11, 2011, 17:27 »

Для sudo обычно пользуются псевдо-терминалами.
Записан

Qt 5.11/4.8.7 (X11/Win)
Edynchik
Гость
« Ответ #16 : Март 11, 2011, 17:33 »

Для sudo обычно пользуются псевдо-терминалами.
что значит псевдо-терминал? и как им пользоваться для введения пароля при использовании sudo?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #17 : Март 11, 2011, 17:42 »

Цитировать
что значит псевдо-терминал?
http://en.wikipedia.org/wiki/Pseudo_terminal
Цитировать
как им пользоваться для введения пароля при использовании sudo?
http://www.prog.org.ru/topic_16702_0.html
Записан

Qt 5.11/4.8.7 (X11/Win)
Edynchik
Гость
« Ответ #18 : Март 11, 2011, 18:10 »

Цитировать
что значит псевдо-терминал?
http://en.wikipedia.org/wiki/Pseudo_terminal
Цитировать
как им пользоваться для введения пароля при использовании sudo?
http://www.prog.org.ru/topic_16702_0.html
прочитал ту тему, там указан источник...http://drdobbs.com/184403468?pgno=3...засунул исходник в Qt Creator, не скомлировался...а примеров больше по ссылке нет...У Вас есть скомпилированная версия исходников?
« Последнее редактирование: Март 11, 2011, 18:16 от Edynchik » Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #19 : Март 11, 2011, 18:18 »

Цитировать
прочитал ту тему, там указан источник...http://drdobbs.com/184403468?pgno=3...засунул исходник в Qt Creator, не скомлировался...а примеров больше по ссылке нет...
Ну да, здесь простым copy-paste не обойтись. Нужно малость и серое вещество поднапрячь однако.
Записан

Qt 5.11/4.8.7 (X11/Win)
Edynchik
Гость
« Ответ #20 : Март 11, 2011, 18:20 »

Цитировать
прочитал ту тему, там указан источник...http://drdobbs.com/184403468?pgno=3...засунул исходник в Qt Creator, не скомлировался...а примеров больше по ссылке нет...
Ну да, здесь простым copy-paste не обойтись. Нужно малость и серое вещество поднапрячь однако.
не в том дело что не хочется, просто не очень представляю что должно получиться в итоге...
Можно пояснить что выполняется в блоках try catch?
« Последнее редактирование: Март 14, 2011, 09:51 от Edynchik » Записан
Edynchik
Гость
« Ответ #21 : Март 18, 2011, 13:53 »

4GreatSnake:
подскажите,не издевайтесь,толковый пример по использованию псевдо терминала...
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #22 : Март 18, 2011, 14:05 »

4GreatSnake:
подскажите,не издевайтесь,толковый пример по использованию псевдо терминала...
Я сильно извиняюсь, т.к. приведённые мной примеры сильно устарели и не работают  Грустный
Вот здесь по-свежее.
Записан

Qt 5.11/4.8.7 (X11/Win)
Edynchik
Гость
« Ответ #23 : Март 18, 2011, 16:18 »

а куда собственно свою команду вставлять,которую надо запустить в псевдотерминале???
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #24 : Март 18, 2011, 16:21 »

См. http://www.linux.org.ru/forum/development/2947563#comment-2949698 execl()

На самом деле проблема псевдо-терминала никоим образом не имеет отношения к этой теме Грустный
« Последнее редактирование: Март 18, 2011, 16:25 от GreatSnake » Записан

Qt 5.11/4.8.7 (X11/Win)
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #25 : Март 18, 2011, 23:16 »

Я целиком и полностью согласен и с Вами и с viktor.kz просто если использовать предложенное выше решение - возникнет другая проблема. Необходимо каким - то образом позиционировать ввод данных. Ведь на странице куча прочей инфы, которую нужно пропустить, прежде чем вводить данные... А так - установил курсор в нужную ячейку, нажал хоткей и заполнение пошло.

Тебе же пример специально привели:

А если загрузить сайт в QWebView и там сделать:
webView->page()->mainFrame()->evaluateJavaScript(QString("document.forms[0].username.value = '%1';").arg(value));
Какое тут на&%"% позиционирование?) Единственное что надо было бы от сайта - наличие элемента (<input name="username" type="text"> к примеру, или любой другой который надо заполнить), т.е. он однозначно есть. А способов добраться до него со стороны яваскрипта много (по имени, по id если он есть, по коллекции элементов, по DOM, etc...) и это не проблема. Тут тебе и кроссовость и меньший груз проца. Однозначно, имея этот вариант, пытаться реализовывать его через эмуляцию нажатия клавишь, имхо, полный изврат.
« Последнее редактирование: Март 18, 2011, 23:20 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.