![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Заполнение поля TWebBrowser типа file [D7, WinXP]
Alex_C © (2007-10-26 11:50:00)Не могу заполнить поле типа file. В инете есть куча описаний для тегов INPUT - заполняются без проблем, а вот типа file - не получается имя файла вставить. Делал так:
Сама ф-ция
function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean;
var
i, j: Integer;
FormItem: Variant;
begin
Result := False;
//no form on document
if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then
begin
Exit;
end;
//count forms on document
for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
begin
FormItem := WebBrowser.OleObject.Document.forms.Item(I);
for j := 0 to FormItem.Length - 1 do
begin
try
//when the fieldname is found, try to fill out
if FormItem.Item(j).Name = FieldName then
begin
FormItem.Item(j).Value := Value;
Result := True;
end;
except
Exit;
end;
end;
end;
end;
- взята из FAQ
Использовал:
FilForm( WebBrowser1, 'upload', 'C:\Tem.txt' );
Все проходит, поле находится, но на него ничего не выдодится.
Фраер (2008-05-22 15:41:00) [1]переводи фокус в нужное поле, а потом юзай SendKeys, это ведь так просто
Фраер (2008-05-22 15:40:00) [2]переводи фокус в нужное поле, а потом юзай SendKeys, это ведь так просто
DiamondShark (2008-02-28 17:03:00) [3]
> Сергей М. © (26.10.07 16:00) [1]
> Что говорит отладчик ?
Отладчик говрит, что всё чики-пуки, код выполнился, полёт нормальный.
Если б ты был хоть чуток в той теме, куда свои пять копеек пытаешься вставить, глупых вопросов бы не задавал.
> Alex_C (26.10.07 11:50)
А браузер не даёт скрипту или внешнему коду изменить value для INPUT type="file":
input type=file The value, a file name, typed by the user into the control. Unlike other controls, this value is read-only.
(Ц) МСДН
И правильно делает, из соображений безопасности. Иначе, интересные вещи можно было бы творить, например, спокойно тырить любые файлы с твоего компа.
dos999 (2008-02-28 12:23:00) [4]
> делал заполнение такого поля через clipboard, по-другому
> не получилось
напиши плиз как ты это делал.... очень срочно надо. единственная страница в которую я нашёл, больше негдк о полях типа file вообще не говорят... если можно побыстрее... очень-очень надо
MetalFan (2007-10-30 13:18:00) [5]делал заполнение такого поля через clipboard, по-другому не получилось
Сергей М. (2007-10-26 16:00:00) [6]Что говорит отладчик ?