Вниз
Скачать: CL | DM;

Объектная модель IE (или как сохранить страницу)   Найти похожие ветки 

← →
pavlo2   (2006-05-04 01:19) [0]

Всем здравствуйте.
Вот пишу следуйщий код:
uses ComObj
var
IE,Doc: Variant;
begin
IE := CreateOleObject("InternetExplorer.Application");
IE.Visible := True;
IE.Navigate2("http://www.stc-istok.com.ua");

while (IE.ReadyState<>4) or (IE.Busy) do
begin
Sleep(100);
Application.ProcessMessages;
end;

Doc := IE.Document;
Doc.execCommand("SaveAs",False,"c:\test1.htm" );
после его выполнения у меня появляеться окна
сохранения теперь мне надо как то нажать сохраниться ,конечно можно просто нажать на кнопку сохранить и потом проверять пока активно окно прогресса сохранения тогда оставться в цикле while.
а к окна нет то выходить из цикла.но это замарочено через findwindow писать.Должен быть способ проще какой-то через COM.Максимум в пару строк.Так какой же?
И почему если я хочу нажать энтер в активное окно вот так keybd_event(VK_RETURN,0,0,0);
keybd_event(VK_RETURN,0,KEYEVENTF_KEYUP,0);то всё работает,а если я хочу так же нажать клавиатурную правую кнопу мыши вот так
keybd_event(VK_RBUTTON,0,0,0);
keybd_event(VK_RBUTTON,0,KEYEVENTF_KEYUP,0); то она не нажимаеться.Кто нить сталкивался?

P.S. Может,кто-нибудь все-таки видел объектную модель IE.Киньте ссылку...Может таки там есть метод на "нормальное" сохранение.


← →
SuperBUG ©   (2006-05-05 20:39) [1]

объектная модель
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reflist_vb.asp

а вот что касается сохранения загруженного документа-то похоже в тихаря он не сохраняется %) . Если поискать в MSDN,можно обнаружить что для сохранения страниц микрософт предлагает пихать их в буфер и оттуда писать в файл...где-то для любителей VB мне это попадалось...


← →
Pavlo ©   (2006-05-05 23:18) [2]

uses MSHTML;
var
HTMLDocument: IHTMLDocument2;
PersistFile: IPersistFile;
begin
HTMLDocument := WebBrowser1.Document as IHTMLDocument2;
PersistFile := HTMLDocument as IPersistFile;
PersistFile.Save(StringToOleStr("С:\test.txt"), True);
while HTMLDocument.readyState <> "complete" do Application.ProcessMessages;
Ну а как же такая строка что значит?


← →
SuperBUG ©   (2006-05-06 16:10) [3]

вопрос то в чем???? 80



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.042 c
2-1148163498
Призрак
2006-05-21 02:18
2006.06.11
COM-порт. Если девайс отключить...


11-1127931560
Kozz
2005-09-28 22:19
2006.06.11
Почему Thread1 останавливается ?


2-1148658284
cardexc
2006-05-26 19:44
2006.06.11
bpl файл компонента


2-1148222467
sholom
2006-05-21 18:41
2006.06.11
Не реагировать на нажатие клавиш


1-1146815899
Layner
2006-05-05 11:58
2006.06.11
Поиск всех возможных комбинаций




   Наверх