![]() |
|
Модераторы: MetalFan |
![]()
|
|
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
Решил проблему....
Только в Form1Close(), эта штука не работает. Пришлось BorderIcons отключить полностью -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
А зачем определять, запущен Word или нет?
Вообще реккомендую закладкой servers не пользоваться. Лучше брать только интерфейсы и создавать объекты в run-time - гораздо меньше происходит неожиданных вещей да и из кода очевидно, что происходит. -------------------- Волны гасят ветер... |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 2 Всего: 329 |
Значит ты неправильно его закрываешь
нужно так
у меня всё работает |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
дело в том что в моём случае ошибка возникает ещё до закрытия и вообще при попытке оперирования с этим документом в программе -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Girder |
|
|||
![]() Лентяй 2 ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1993 Регистрация: 12.5.2004 Репутация: 6 Всего: 155 |
Albinos_x
1. тебе Fantasist дельный совет дал. 2. Конструкцией try except end - не стоит пренебригать. 3. А если у пользователя 150 документов в Word-е? PS: Не забудь создавать(если у тебя её нет) папку "Temp" - Word - за тебя енто не сделает... Вот код:
PS2: При запуске кода из под Delphi - могут выдаваться ошибки - но не при обычном запуске проги. Особо... не отлаживал - так что теоретически... И самое главное... так как ентот код ты хочеш засунуть в OnClose - не забудь выдавать для пользователя какое-нить сообщение... типо "Подождите пожалуйста"... Удачи. Это сообщение отредактировал(а) Girder - 7.5.2005, 13:25 -------------------- Как слышим, так и пишим. Истина где-то там... |
|||
|
||||
| Fantasist |
|
||||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
Girder у нас же описания интерфейсов есть - зачем нам с Dispatcheм мучаться.
Я бы переписал это так:
Обработка ошибок, конечно, выглядит не очень, но пойдет. Добавлено @ 19:08
Тогда компутер у него сдохнет еще до запуска этой программы. Это сообщение отредактировал(а) Fantasist - 7.5.2005, 19:08 -------------------- Волны гасят ветер... |
||||
|
|||||
| Albinos_x |
|
||||||||||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
не пренебрегаю... (см. мой вариант)
Проверял на 5 одновременно открытых документах - закрывается тот который нужен. (в моём варианте)
и такое есть...
знаю, но всё равно, спасибо за предупреждение... ----------------------------------------------
PS: ваши варианты пока не проверял...
Когда это понял, уже было поздно переделывать прогу...На тот момент уже около 5 тыс. строк... Даже с коментариями очень сложно осуществлять навигацию... Сейчас прежде чем, чего-то туда вставить, приходится сначала делать оттельно и уже рабочий вариант кода туда вставлять и даже с таким подходом возникают иногда проблеммы (сегодня неожиданно одна процедура, в которую вставлял новую функцию, стала выдавать переполнение стека...) Спасибо всем за помощь!!! -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||||||||||
|
|||||||||||||
| Albinos_x |
|
||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
Предложенные варианты хорошие, но работают не совсем так как я хотел... моё конечное решение:
работает на ура и никаких ошибок не возникает... еще раз всем спасибо за участие и дельные советы Это сообщение отредактировал(а) Albinos_x - 19.7.2005, 17:38 -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||
|
|||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 2 Всего: 329 |
При раннем связывании всё работает быстрее и проверка типов и ошибок происходит уже на стадии компилирования
Хотя при позднем связывании тоже есть свои прелести |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
Обнаружил, что при некоторых настройках винды, событие FormClose почему-то не обрабатывается... Поэтому приведённый выше код запихнул в событие FormDestroy(Sender: TObject). Тогда проблем не возникнет...
-------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
![]()
|
| Правила форума "Delphi: ActiveX/СОМ/CORBA" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |