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

Вниз

Как убить приожение?   Найти похожие ветки 

 
kaktus   (2004-12-03 14:58) [0]

Доброго всем суток времени!
У меня такая проблема:
при обработке события OnClose я выполняю следующие действия:
procedure TfMain.FormClose(Sender: TObject; var Action: TCloseAction);
var
i : Integer;
FalseParam : OleVariant;
begin
FalseParam := False;
for i := 0 to 10 do
 delTemp;                //Очистка временной таблицы базы данных
WordApp.Quit(FalseParam);//Закрываю коннэкт с Word-ом
Application.Free;        //Пробывал Destroy
end;
После всего этого процесс все еще висит в оперативке, и при последующем запуске ругается не красивыми словами мастдая типа: Допущена ошибка .... и т. д.


 
ssk ©   (2004-12-03 15:04) [1]

1. Application.Terminate
2. Halt


 
Verg ©   (2004-12-03 15:04) [2]


> Application.Free;        //Пробывал Destroy


Это-то зачем?


 
kaktus   (2004-12-03 15:07) [3]

>Это-то зачем?
А затем что по клоуз не фига не срабатывает!


 
Verg ©   (2004-12-03 15:13) [4]


> [3] kaktus   (03.12.04 15:07)


Так может вопрос все же "почему-то по close не срабатывает", а не subj ?

А то, ведь я скажу - "нажми кнопку Power" и твой вопрос будет снят, не так ли?


 
Sergey_Masloff   (2004-12-03 15:29) [5]

Вместо
WordApp.Quit()

сделай
WordApp := Unassigned;

Application.Free()  не нужно


 
Sergey_Masloff   (2004-12-03 15:32) [6]

Тут имхо дело в следующем.
Имеем WordApp связаный с COM-объектом Word-а. Даем ему команду себя закрыть (при этом ссылка интерфейсная повисает). Затем закрываем приложение. Оно честно хочет сделать варианту АнЭссайн что приводит к обращению к интерфейсу реализация которого выгружена уже. С непредсказуемыми последствиями.
 Это только предположение но думаю похоже на истину.


 
kaktus   (2004-12-03 15:37) [7]

>WordApp := Unassigned;
не работает!
[Error] main.pas(697): Incompatible types: "TWordApplication" and "Variant"


 
Sergey_Masloff   (2004-12-03 15:44) [8]

kaktus   (03.12.04 15:37) [7]
Ну покажи как ты создаешь свой WordApp - ты ж объявление не привел. С вариантом это если работаешь через позднее связывание (late binding) если через vtable непосредственно то интерфейс по другому высвободить надо. Вобщем, показывай все - как объявил как создал.


 
kaktus   (2004-12-03 16:09) [9]

WordApp.Connect;
WordDoc.ConnectTo(WordApp.Documents.Add(EmptyParam, EmptyParam));


 
VMcL ©   (2004-12-03 17:25) [10]

>>kaktus  (03.12.04 16:09) [9]

Это не создание и не объявление, а просто какие-то две строки кода.


 
kaktus   (2004-12-03 17:45) [11]

Есть такой хороший не визуальный элемент управления как WordApplication и WordDocument - вот ими я и пользуюсь! Какое создание, какое обьявление????? Это не простые строки кода - а волшебные - я скажу так: с вордякой у меня проблем нет - закрывается как милинький! А вот форма - главная - не хочит киллица - по сути - сама форма хайдится, но не уничтожается.


 
VMcL ©   (2004-12-04 13:54) [12]

>>kaktus  (03.12.04 17:45) [11]

WordApplication.Disconnect сделали по окончании работы с Word"ом?


 
kaktus   (2004-12-06 12:10) [13]

>WordApplication.Disconnect сделали по окончании работы с >Word"ом?

Когда я такое делал у меня выскакивал меседж с предложением сохранить документ, а это мне надо меньше всего-понимаете я работаю с вордовским словарем для проверки синтаксиса вводимого текста в RichEdit1. Для этого я проделал следующее:

var
FalseParam:OleVariant;
begin
FalseParam := False;

...

WordApp.Quit(FalseParam);
end;
Меседж не появляется - ну всеравно мне не нравиться, что после программного завершения работы программы - ее процесс все еще висит в диспечере задач.



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

Форум: "Основная";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.036 c
4-1099488416
andrey__
2004-11-03 16:26
2004.12.19
NamedPipe


11-1084189550
Yustas
2004-05-10 15:45
2004.12.19
Иконка приложения


14-1101669271
Maxim_S~~
2004-11-28 22:14
2004.12.19
помогите с треем!


1-1101998562
novice__man
2004-12-02 17:42
2004.12.19
Переменные в DLL.


6-1097261876
Wish
2004-10-08 22:57
2004.12.19
Как осуществить поддержку прокси в своей программе?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский