Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# + MS Excel / 6 сообщений из 6, страница 1 из 1
25.02.2005, 15:33
    #32933861
Romanyn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
Здравствуйте, коллеги!

Вот какой вопрос возник. Из Web-сервиса на С# создаю объект MS Excel
{
...
Excel.Application exApp = new Excel.ApplicationClass();
...
}
Успешно с ним работаю. Потом желаю удалить процесс из памати, чтоб не болтался. Как гарантированно найти и удалить именно созданный здесь экземпляр Excel?
Пробовал так:
{
...
exApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(exApp);
exApp=null;
GC.Collect();
...
} - не прокатывает.

А убивать все процессы, найденные в системе в цикле по имени "EXCEL.EXE" считаю мягко говоря некорректным способом.
Какие мысли?
...
Рейтинг: 0 / 0
25.02.2005, 15:52
    #32933934
M234
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
RomanynЗдравствуйте, коллеги!

Вот какой вопрос возник. Из Web-сервиса на С# создаю объект MS Excel
{
...
Excel.Application exApp = new Excel.ApplicationClass();
...
}
Успешно с ним работаю. Потом желаю удалить процесс из памати, чтоб не болтался. Как гарантированно найти и удалить именно созданный здесь экземпляр Excel?
Пробовал так:
{
...
exApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(exApp);
exApp=null;
GC.Collect();
...
} - не прокатывает.

А убивать все процессы, найденные в системе в цикле по имени "EXCEL.EXE" считаю мягко говоря некорректным способом.
Какие мысли?

Как вариант:

GC.Collect();
GC.WaitForPendingFinalizers();
...
Рейтинг: 0 / 0
25.02.2005, 16:02
    #32933973
Kilroy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
Вопрос многократно обсуждался и корректного решения не существует.
...
Рейтинг: 0 / 0
26.02.2005, 08:54
    #32934728
KoTTT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
Если офис 2003 - то он нормально выгружается из памяти.
...
Рейтинг: 0 / 0
26.02.2005, 11:39
    #32934791
Bigheadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
Имею 2003 офис. И выгружается не всегда. Хотя следую описанной выше (и рекомендуемой всеми авторитетными источниками) практике.

Советую поискать на www.gotdotnet.ru. Там эта тема много раз обсуждалась.
...
Рейтинг: 0 / 0
27.02.2005, 10:33
    #32935293
remotd
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
C# + MS Excel
KilroyВопрос многократно обсуждался и корректного решения не существует.
Проблемы и с 2000 и с 2003. Гарантированно - убивать процесс.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# + MS Excel / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]