Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

CreateOleObject не килится процесс

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
MuXA



Зарегистрирован: 18.10.2001
Сообщения: 2
Откуда: Тюмень

СообщениеДобавлено: Пт Окт 19 2001 09:18    Заголовок сообщения: CreateOleObject не килится процесс Ответить с цитатой

При создании объекта XLApp:=CreateOleObject('Excel.Application'), все пучком.
Косяк при его закрытии XLApp.quit.
Не килится процесс, в списке задач excel.exe.
Delphi Win2k SP1.
Хелп ПЛИЗ.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
S
Гость





СообщениеДобавлено: Пт Окт 19 2001 12:29    Заголовок сообщения: Re: CreateOleObject не килится процесс Ответить с цитатой

Привет!

Все делаешь правильно. Но Виндозе почему-то глючит при работе с Ole- объектами и не удаляет фоновые процессы. Причем делает это только на определенных машинах. Закономерности, к сожалению, выявить так и не удалось. Поэтому оставлял Excel(Word) открытыми с сформированным документом и юзер сам закрывал приложение.

Вот функция, которая создавала OLE object для Excel и работала в 90% случаев:

Function TMainForm.CreateOleObject_Excel(var Excel_book: Variant): integer;
begin
try
// если Excel уже открыт, то работаем с ним
Excel_Book:=GetActiveOleObject('Excel.Application');
Result:=2; // 2-Excel был уже открыт
except
try
// если Excel не открыт, то загружаем его(создаем OLE)
Excel_Book:=CreateOleObject('Excel.Application');
Result:=1; // загружали Excel
except
Application.MessageBox('Не могу открыть Microsoft Excel', 'Cообщение', MB_OK + MB_ICONERROR);
Result:=0; // открыть не удалось
end;
end;
end;

А это вызов функции:
procedure TMainForm.MyButtonClick(Sender: TObject);
var
Excel_book: Variant;
begin
type_Excel:=CreateOleObject_Excel(Excel_book);
// что-то делаем

Excel_Book.Application.Quit;

end;
Вернуться к началу
MuXA



Зарегистрирован: 18.10.2001
Сообщения: 2
Откуда: Тюмень

СообщениеДобавлено: Пт Окт 19 2001 13:32    Заголовок сообщения: Re: CreateOleObject не килится процесс Ответить с цитатой

Когда закрываю ручками таже ситуация.
При активном окне закрываю документ(не приложение), все ОК, но приложение становиться не видимым(не зыкрывается).
Ест-но процесс живой.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Beguin
Гость





СообщениеДобавлено: Вс Окт 21 2001 14:06    Заголовок сообщения: Хм. Это настораживает. У меня везде работает. Правда Word и IE. Ответить с цитатой

А это не может быть Дельфевая бага?
Можно, если конечно не затруднит, узнать ТТХ этих машин? В мыло.
Вернуться к началу
S
Гость





СообщениеДобавлено: Вс Окт 21 2001 17:57    Заголовок сообщения: Re: Хм. Это настораживает. У меня везде работает. Правда Word и IE. Ответить с цитатой

Кстати.
пробовал работать с OLE(word, excel) не только из-под Delphi.
Нужно было создать doc(rtf) документ под веб. Так были те же проблемы: работало через раз...
В конце концов пришлось отказаться от OLE(ActiveX) и разбираться со спецификацией rtf-формата, чтобы напрямую формировать rtf-файл...
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...