Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Опять о cgi.. Можно ли в нем использовать ADO? как? [D7, XP]


Vlad Oshin ©   (2007-02-15 16:22:00) 

Всегда писал  
ADOconnection1:=TADOConnection.Create(nil);
и поехали ..
а ту уже не проходит

                                   then remarks:=remarks+' '+VarValue;
                                           end;
Log('end;'); //писать в лог
ADOconnection1:=TADOConnection.Create(nil);
Log('ADOconnection1:=TADOConnection.Create(nil);');//писать в лог

последнее что в логе - "end;"


Vlad Oshin   (2007-02-15 16:38:00) [1]


> cgi - это обычное консольное приложение

дык вот и я про что.. тот же код работает в GUI приложении


хотел было так написать :) но попробовал Log(E.Message); показало
"Не был произведен вызов Colnitialize".

http://podgoretsky.com/ftp/Docs/Delphi/DX/COMmodel.html
Короче, следует писать следующий вызов:
CoInitializeEx (NIL, COINIT_APARTMENTTHREADED);

уфф...
заработало :)

Спасибо!!


Плохиш   (2007-02-15 16:27:00) [2]


try
....
 ADOconnection1:=TADOConnection.Create(nil);
....
except
 on E:Exception do Log(E.Message);
end;


cgi - это обычное консольное приложение, поэтому описанный у тебя код должен работать. Единственно, что cgi-приложение запускается под учётной записью веб-сервера, вполне возможно, что для неё что-то ограничено или не настроено.


Наверх

Титульная страница Поиск, карта сайта Написать письмо