Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ошибка приложения (EOleSysError)

15K
26 июля 2006 года
koven
9 / / 21.07.2006
Привет всем!

Delphi 7. Есть такой код:

program Project2;
{$APPTYPE CONSOLE}
uses
Windows, Messages, SysUtils, Variants, Classes,
OleCtrls,ComObj,ActiveX, StdCtrls, SHDocVw ;
var
wb: TWebBrowser;
begin
wb := TWebBrowser.Create(nil);
wb.Navigate('http://site.ru/');
end.

После запуска (из под Delphi) вылетает такая ошибка: "Project Project2.exe raised exeption class EOleSysError with message 'Не был произведен вызов CoInitialize'. ...", если запускать из под винды, то просто "программа выполнила недопустимую ...". Писал еще такой код:


var
objIE: OleVariant;
i: integer;
strs: TStrings;
begin
try
objIE := CreateOLEObject('InternetExplorer.Application');
objIE.Visible := 0;
objIE.Navigate('http://site.ru/');
while objIE.Busy do
sleep(200);
strs := TStringList.Create;
strs.Clear;
for i := 0 to objIE.document.links.length - 1 do
strs.add(objIE.document.links.Item(i))
finally
objIE := unassigned;
end;
end;

но эффект тот же. Если писать данный код в обычно приложении (с "формой"), то все работает. Подскажите, как побороть??
302
26 июля 2006 года
Sagittarius
648 / / 12.04.2003
В сообщение, которое вылетает в Delphi, все написано.
1. Подключи модуль ActiveX
2. До создания объекта TWebBrowser (лучше в начале программы где-нибудь) вызови CoInitialize( Nil )
3. В конце программы, перед ее завершением, вызови CoUninitialize
303
26 июля 2006 года
makbeth
1.0K / / 25.11.2004
Добавлю, что вызов CoInitialize происходит автоматически только в GUI приложении (в Application.Init). Т.к. у тебя консольное приложение, то нужно вызывать вручную, как подсказал Sagittarius
15K
26 июля 2006 года
koven
9 / / 21.07.2006
отлично! всем спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог