Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Весит процесс EXCEL.EXE 
:(
    Опции темы
LectorSP
Дата 1.10.2007, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

Репутация: нет
Всего: 2



Есть еще одни вопрос...Есть Excel документ, который генерируеться на стороне сервера...как я уже гворил пользователь получат линк на это документ, который благополучно загружаеться и при этом не хочет выгружаться...т.е. весит это процесс EXCEL.EXE с того момента как создаеться экземпляр класса -  new ApplicationClass (), может кто знает, почему он весит?
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
Wanderer2019
Дата 1.10.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: 1
Всего: 17



если речь идет о процессе повисшем насервере, то никто тебе конкретно ничего не скажет в том числе и Microsoft. Они позиционируют MS Office, как клиентское приложение и снимают с себя ответственность по серверной автоматизации любых приложений MS Office. Соответствующий документ можно найти на microsoft.com. По возможности переноси запуск и работу с офисом на клиентов...
PM ICQ MSN   Вверх
LectorSP
Дата 1.10.2007, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 13.4.2006
Где: г. Минск

Репутация: нет
Всего: 2



всё понятно..спасибо большое.
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже  пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже!
PM MAIL ICQ   Вверх
Idsa
Дата 8.10.2007, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(Wanderer2019 @  1.10.2007,  11:26 Найти цитируемый пост)
если речь идет о процессе повисшем насервере, то никто тебе конкретно ничего не скажет в том числе и Microsoft. Они позиционируют MS Office, как клиентское приложение и снимают с себя ответственность по серверной автоматизации любых приложений MS Office. Соответствующий документ можно найти на microsoft.com. По возможности переноси запуск и работу с офисом на клиентов... 

Не вижу разницы между работой с Excel на клиенте и на сервере: те же com-обертки, те же методы и классы...

Теперь по сабжу. Действительно, есть такая проблема. Писали, что проблема решена в 2003-м Офисе... но я столкнулся с ней именно в этой версии. Может, исправили в 2007-м...
Вообще для решения этой проблемы рекомендуется использовать позднее связывание и некоторые другие хитрые приемы... хотя лично мне это не помогло - пришлось смириться.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Незнайка1965
Дата 11.9.2009, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 17.5.2008
Где: Москва

Репутация: нет
Всего: нет



Цитата(LectorSP @  1.10.2007,  09:47 Найти цитируемый пост)
как я уже гворил пользователь получат линк на это документ

Да у меня никакого линка, формируемый xls-файл отсылается по почте.
И всё равно висит процесс EXCEL. 10 раз вызываю веб-страницу - 10 процессов висят.
Разумеется, метод Quit() я вызываю.
PM MAIL WWW ICQ   Вверх
Roha
Дата 11.9.2009, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 14.12.2006

Репутация: нет
Всего: 1



Попробуй после генерации Excel-я
Код

Marshal.ReleaseComObject(oExcelApp);
GC.Collect(0);
GC.GetTotalMemory(true);

мне помагает
PM MAIL   Вверх
Незнайка1965
Дата 11.9.2009, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 17.5.2008
Где: Москва

Репутация: нет
Всего: нет



Цитата(Idsa @ 8.10.2007,  23:31)
Может, исправили в 2007-м...

А как в программе сохранить объект Excel-2007 (то есть созданный с использованием библиотеки версии 12) в более старом формате?
PM MAIL WWW ICQ   Вверх
Незнайка1965
Дата 11.9.2009, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 17.5.2008
Где: Москва

Репутация: нет
Всего: нет



Цитата(Roha @ 11.9.2009,  10:04)
Попробуй после генерации Excel-я
Код

Marshal.ReleaseComObject(oExcelApp);
GC.Collect(0);
GC.GetTotalMemory(true);

мне помагает

Спасибо большое, и мне тоже помогло!
PM MAIL WWW ICQ   Вверх
Любитель
Дата 11.9.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 5
Всего: 92



Цитата(Idsa @  8.10.2007,  23:31 Найти цитируемый пост)
Не вижу разницы между работой с Excel на клиенте и на сервере: те же com-обертки, те же методы и классы...

Дело в ущербности пользователя ASPNET. И прав у него никаких, и профиля нет.. Вообщем, банальным решением для офисной автоматизации является имперсонеёт сайта.. И ещё - Marshal.ReleaseComObject. Причём для полной надёжности (самое забавное, что это зачастую помогает) - для всех COM-объектов (само собой написав маленький хелпер, для освобождения их скопом). Т. е. никаких excelApp.WorkBooks.Open - ибо надо релизить и WorkBooks и excelApp и полученный воркбук..

А вообще - если это возможно, office automation на server side действительно лучше избежать.


--------------------
PM MAIL ICQ Skype   Вверх
Незнайка1965
Дата 12.9.2009, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 17.5.2008
Где: Москва

Репутация: нет
Всего: нет



Цитата(Любитель @  11.9.2009,  23:26 Найти цитируемый пост)
Дело в ущербности пользователя ASPNET. И прав у него никаких, и профиля нет.. Вообщем, банальным решением для офисной автоматизации является имперсонеёт сайта.. 

Да, и мне пришлось на это пойти.
Цитата(Любитель @  11.9.2009,  23:26 Найти цитируемый пост)
А вообще - если это возможно, office automation на server side действительно лучше избежать. 

А вот это можно поподробнее?
PM MAIL WWW ICQ   Вверх
Любитель
Дата 13.9.2009, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 5
Всего: 92



Цитата(Незнайка1965 @  12.9.2009,  23:27 Найти цитируемый пост)
А вот это можно поподробнее? 

Ну.. Если нужны линейные данные в экселе - то можно вообще использовать csv, для загрузки табличных данных можно использовать OLE DB провайдер, для генерации экселя/ворда можно использовать WordML, ExcelML или OpenXML. Всё зависит от задачи.


--------------------
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0504 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.