Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

IHTMLInputFileElement value?   Найти похожие ветки 

 
xmrz   (2004-09-08 19:21) [0]

Уважаемые мастера, кто-нибудь может помочь решить эту проблему?
Разбираю страницу через TWebBrowser. Возникла насущная необходимость заполнять поля с type="file" (метод set_value()). MSDN и FAQ уже перерыл. На чтение возможность есть, а на запись Micro$oft возможность заблокировали.
У меня единственный вариант: делать "click", а потом искать окно (FindWindow) с "Выбор файла", там в поле вводить текст и нажимать "Выбрать". Вариант скажим так не лучший. Кто нибудь решал эту проблему? Вариант отправлять заголовки мне не подходит, нужно заполнять поле на живую.


 
xmrz   (2004-09-08 19:46) [1]

Если бы можно было "не отходя от кассы" получить что-то типа handle поля с WebBrowser"a в которое надо внести значение, и послать ему сообщение SET_TEXT, но эти контролы они вроде не окна? Может есть еще варианты?


 
Ihor Osov'yak ©   (2004-09-08 21:52) [2]

> а на запись Micro$oft возможность заблокировали.

И правильно сделали. По соображениям безопасности.

>У меня единственный вариант:...

боюсь, что он единственный.  Можно только слегка модифицировать - не делать клика, просто сфокуcировать соотв. IHtmlElement и слать соотв. сообщения (имитирующие рвьоту клавиатуры) хендлу контрола, который хостит соотв. активИкс (для TWebBrowser это будет WebBrowser.Handle)

>но эти контролы они вроде не окна?

Не окна.


 
xmrz   (2004-09-08 22:12) [3]

>>И правильно сделали. По соображениям безопасности.
целиком и полностью согласен

проделал следующие манипуляции:

wb : TWebBrowser;
fel : IHTMLInputFileElement;
...

fel := FCol.item(j,varEmpty) as IHTMLInputFileElement;
wb.SetFocus;
fel.select;
...
и через keybd_event() посылаю последовательность символов, а в поле - пустота

Что не так?


 
xmrz   (2004-09-08 22:14) [4]

>>И правильно сделали. По соображениям безопасности.
целиком и полностью согласен

проделал следующие манипуляции:

wb : TWebBrowser;
fel : IHTMLInputFileElement;
...

fel := FCol.item(j,varEmpty) as IHTMLInputFileElement;
wb.SetFocus;
fel.select;
...
и через keybd_event() посылаю последовательность символов, а в поле - пустота

Что не так?



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
1-1098374169
Checist [root]
2004-10-21 19:56
2004.11.14
Управление FlashGet


3-1097842968
Vlad
2004-10-15 16:22
2004.11.14
Компоненты прямого доступа к DBF


14-1098977679
Silla
2004-10-28 19:34
2004.11.14
Visual C++ 6&7 Forum


3-1097649858
AlexG
2004-10-13 10:44
2004.11.14
Подключение к БД в потоке


1-1099027450
JOnyto
2004-10-29 09:24
2004.11.14
Приостановление выполнения процедуры до нажатия кнопки "Далее"!