Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2011.08.14;
Скачать: [xml.tar.bz2];

Вниз

Delphi & Excel 2007   Найти похожие ветки 

 
Дмитрий Тимохов   (2011-04-20 16:45) [0]

Добрый день.

Тема мышами изгрызена, но у меня есть неперевариваемая проблема, поэтому, решил спросить...

Ситуация:
1. Работаю с Excel 2007 через позднее связывание из Delphi 7.
2. Делаю как положено, типа того:

 
XLApp:=CreateOleObject("Excel.Application");
...
XLApp:=UnAssigned;


Проблема:
1. На одном компьютере пользователя после данной операции в памяти не остается Excel.
2. На точно таком же (как говорят - версии всего и вся сравнивали - говорят, идентично все) остается.

Вопросы:
1. Сталкивался ли кто-то с такой проблемой?
2. Что делать...


 
oldman ©   (2011-04-20 16:54) [1]


> в памяти не остается Excel.


а должен?


 
Дмитрий Тимохов   (2011-04-20 16:55) [2]

как раз не должен.
виноват, не написал, что считаю верным.

после XLApp := Unassigned процесс Excel должен изгоняться из памяти.


 
Дмитрий Тимохов   (2011-04-20 16:57) [3]

чорт, что-то я не то говорю, конечно Quit вызываю перез XLApp := Unassinged!!!


 
Ega23 ©   (2011-04-20 17:08) [4]


> после XLApp := Unassigned процесс Excel должен изгоняться
> из памяти.


Там нюансы есть.
Точно навскидку не вспомню, но что-то вроде (это гипотеза, давно дело было) если в самом экселе диалог сохранения вызвали. Или автосохранение сработало.
В общем, попробуй в эту сторону посмотреть.


 
Дмитрий Тимохов   (2011-04-20 17:15) [5]

Создаю так

fApp := CreateOleObject("Excel.Application");
fApp.Visible := False;
fApp.Interactive := False;
fApp.DisplayAlerts := False;
fApp.ScreenUpdating := False;
fApp.SheetsInNewWorkbook := 1;


 
Ega23 ©   (2011-04-20 17:24) [6]


> Создаю так


Дима, я вообще не помню, давно дело было. Но вот какие-то нюансы выплывали.
Может у них параллельно Excel был запущен, а потом закрыт?
Проще всего - напиши тестик -

fApp := CreateOleObject("Excel.Application");
fApp.Visible := False;
fApp.Interactive := False;
fApp.DisplayAlerts := False;
fApp.ScreenUpdating := False;
fApp.SheetsInNewWorkbook := 1;
fApp.Quit;
fApp := Unassigned;


и запусти на обеих машинах. при этом чтобы гарантированно до теста никаких EXCEL.EXE в процессах не болталось.


 
Дмитрий Тимохов   (2011-04-20 17:28) [7]

Ок, завтра посмотрю.
Произвожу просто предварительную разведку - может эта проблема всем известна уже..


 
Игорь Шевченко ©   (2011-04-20 17:34) [8]

XLApp:=CreateOleObject("Excel.Application");
...
XLApp.Quit;
XLApp:=nil;

работает без проблем в течение многих лет с разными версиями Excel на разных компьютерах разных пользователей.


 
Дмитрий Тимохов   (2011-04-20 17:37) [9]

Игорь, у меня по сути то же самое...
Я просто в начале сказал не верно.

Только XLApp := Unassinged, а не nil. Вроде это значения иметь не должно?
Так тоже завтра попробую.


 
Игорь Шевченко ©   (2011-04-20 17:40) [10]

Дмитрий Тимохов   (20.04.11 17:37) [9]

Я конечно ошибся, не nil, а null



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

Форум: "Прочее";
Текущий архив: 2011.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
15-1303459236
Дмитрий С
2011-04-22 12:00
2011.08.14
HDFury DVI-D->VGA


15-1303483359
mr.Ulugbek
2011-04-22 18:42
2011.08.14
Не работает INDY 8 SQUID Proxy.


2-1304369709
Lutdan
2011-05-03 00:55
2011.08.14
Delphi:Вывести в DBLookupComboBox нужною строку столбца


15-1303562654
И. Павел
2011-04-23 16:44
2011.08.14
Нужно ли так распинаться?


2-1304438175
vitge
2011-05-03 19:56
2011.08.14
Организация БД в Паскале на основе деревьев.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский