-
Alex_C (26.10.07 11:50) [0]Не могу заполнить поле типа 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' );
Все проходит, поле находится, но на него ничего не выдодится. -
Сергей М. © (26.10.07 16:00) [1]Что говорит отладчик ?
-
MetalFan © (30.10.07 13:18) [2]делал заполнение такого поля через clipboard, по-другому не получилось
-
> делал заполнение такого поля через clipboard, по-другому
> не получилось
напиши плиз как ты это делал.... очень срочно надо. единственная страница в которую я нашёл, больше негдк о полях типа file вообще не говорят... если можно побыстрее... очень-очень надо -
DiamondShark © (28.02.08 17:03) [4]
> Сергей М. © (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.
(Ц) МСДН
И правильно делает, из соображений безопасности. Иначе, интересные вещи можно было бы творить, например, спокойно тырить любые файлы с твоего компа. -
Фраер (22.05.08 15:40) [5]переводи фокус в нужное поле, а потом юзай SendKeys, это ведь так просто
-
Фраер (22.05.08 15:41) [6]переводи фокус в нужное поле, а потом юзай SendKeys, это ведь так просто