crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в запуск приложения
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Алексей1153 Дата 6.10.2011, 0:44
 
Цитата
как тут отследить нажалась кнопка или нет?


в общем случае - никак. В частном - нужно знать, какая реакция должна последовать , и по этому косвенному признаку узнавать ) А вот если контролы созданы через WinAPI - там чётко по ID нажатие произойдёт
dimetra Дата 5.10.2011, 22:18
  нашел пример нажатия кнопок но вот только чего то мало получается с ними...

но api
#ifdef Q_WS_WIN
#include <w32api.h>
#include <windows.h>
#endif

..........

#ifdef Q_WS_WIN
SetCursorPos(pos.x(), pos.y());
Sleep(1);
mouse_event(MOUSEEVENTF_MOVE, 0, 0, 0, GetMessageExtraInfo());
Sleep(1);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, GetMessageExtraInfo());
Sleep(1);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, GetMessageExtraInfo());
#endif

Q_WS_WIN - это что то консольное.
как тут отследить нажалась кнопка или нет?

есть же другой пример, но с ним проблема т.к он создает форму и в ней уже клацает кнопкой, а у меня сторонее приложение запускается:
QMouseEvent *pressedLeftMouseButton = new QMouseEvent(QEvent::MouseButtonPress,
QPoint(100,0),
Qt ::LeftButton,
Qt ::LeftButton,
Qt ::NoModifier);
Алексей1153 Дата 28.9.2011, 8:39
  программа, где вводится пароль, на чём написана ? Палятся ли контролы Spy++ ? Если да - это ГОРАЗДО проще, если нет, то придётся жёстко задать координаты, да и обратная связь похуже будет (мягко говоря). А всё остальное - реализуется относительно несложно (в винде, по крайней мере, и не на Qt, на WinAPI).

ещё абсолютно не исключено, что программа умеет принимать параметры из командной строки. Попробуй вывести справку
silver47 Дата 28.9.2011, 5:28
  гм... вот как кнопки нажимать не знаю... Читал когда-то про эмуляцию событий мыши\клавиатуры, но не уверен, что это можно вынести за пределы приложения. А для запуска приложения с параметрами подойдет QProcess

dimetra Дата 27.9.2011, 21:31
  Интерфейс графический, подбор пароля по перебору.
Думаю нужно как то кнопки в интефейсе нажимать :)
Пускай будет долго, мне ради спорта, диску 6 лет, просто забыл что на нем лежит, под шумок и qt изучать буду.
RazrFalcon Дата 27.9.2011, 21:22
  Программа privat disk c графическим интерфейсом, или она консольная?
Вам нужно пароль подобрать? Если да, то конечно это будет долго.
dimetra Дата 27.9.2011, 20:32
  в общем суть пролемы такая, есть программа privat disk, она создает защифрованный файлик, после ввода пароля она подключает дополнительный диск в системе, где хранятся зашифрованные файлы.
есть очень старючий диск, от которого утерян пароль.
собственно весь алгоритм: открыть прогу, добавить шифрованный фаил, ввести пароль, проверить не появился ли в системе еще один диск, зарыть, и все это в цикле!
ресурсов правда будет жрать.
silver47 Дата 27.9.2011, 15:28
  Для этого служит класс QProcess. Подробнее в ассистанте или в примерах. Если там будет непонятно, то могу выложить кусок своей программы, запускаем сторонний процесс и перехватываем его вывод.
dimetra Дата 27.9.2011, 10:06
  Добрый день. Возникла ситуация, открытия сторонней программы, т.е нужено просто открыть ее и вставить некоторые параметры.
каким образом это можно сделать?
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 13.7.2025, 14:21