![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Форумчанин
Регистрация: 28.03.2008
Сообщений: 940
|
![]() Цитата:
Последний раз редактировалось W0LF; 13.10.2009 в 21:47. |
|
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 24.01.2008
Сообщений: 36
|
![]()
А как менять текст окон в проге под названием ICQ 6.5
|
![]() |
![]() |
![]() |
#13 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
так же как и у любого окна.
находите его хендл и далее SetWindowText. и то в том случае если окно примет и обработает WM_SETTEXT(а оно не обязано) поэтому если разрабы запретили, то не выйдет(но надо проверять на опыте) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#14 |
Регистрация: 13.05.2014
Сообщений: 6
|
![]()
Здравствуйте!
Помогите разрешить такой вопрос: В моей программе пользователь загружает презентации PowerPoint, но они должны открываться для него только для чтения. При запуске выходит пароль за запуск презентации ![]() Программа должна эмулировала вставку известного пароля. Затем появляется второе активное окно "Пароль" с курсором в поле ввода пароля ![]() Необходимо не вводить пароль, а нажать кнопку "Только для чтения". Вот тестовый фрагмент программы: var Form1: TForm1; h1,h2,h3,h4,h5,h6:HWND; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin {ищем 1-е окно с именем "Пароль"} 1. h1 := FindWindow(nil, 'Пароль'); //Находим первое окно "Пароль" 2. h2 := FindWindowEx(h1,0,'Edit',nil);//находим дескриптор поля Edit 3. SendMessage(h2, WM_SETTEXT, 0, lparam(pchar('testor'))); 4. h3:=findwindowex(h1,0,nil,'ОК'); //жмем кнопку 5. sendmessage(h3,BM_CLICK,0,0); {ищем 2-е окно с именем "Пароль" } 6. h4 := FindWindow(nil, 'Пароль'); // Находим второе окно "Пароль" 7. h5 := FindWindowEx(h4,0,'Только для чтения',nil); //находим дескриптор кнопки 8. SetForegroundWindow(h5); //устанавливаем на ней фокус 9. sendmessage(h5,BM_CLICK,0,0); //жмем кнопку end; end. До строки 8 все работает нормально. Дальше ни как не могу перевести фокус на кнопку "Только для чтения". Если в ввести с паролем, то все работает (в тексте этого фрагмента нет) Может посоветуете, что мне нужно сделать. Спасибо Последний раз редактировалось progma; 13.05.2014 в 10:25. |
![]() |
![]() |
![]() |
#15 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
1. не лезьте вчужую тему
2. Открывайте документы для чтения через OLE с/без пароля. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Взаимодействие с чужим редактором | Nogard | Помощь студентам | 7 | 12.07.2009 15:23 |
Простейшая работа с чужим приложением... | ActiveX | Помощь студентам | 1 | 31.01.2008 08:17 |
Работа с чужим приложением | ERASERROR | Win Api | 2 | 28.01.2008 15:22 |
работа с чужим окном | RammFan | Win Api | 1 | 18.01.2007 20:21 |
поморгать окном | Баламут | Общие вопросы Delphi | 1 | 10.11.2006 04:09 |