![]() |
Модераторы: MetalFan |
![]() ![]() ![]() |
|
кварк |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.8.2002 Репутация: нет Всего: нет |
Эх, давно здесь не был... Но наконец-таки нашел пароль :-)))
Знатоки, зацените, пожалуйста, код:
Хотел написать что-то типа шаблона для выполнения действий с COM-объектом. Мне кажется слишком громоздким. Чувствую, что можно попроще. Особенно не нравится try..except, вложенный в try..finally. Может, "есть способ лучше"? В общем, принимаются замечания по улучшению. Это сообщение отредактировал(а) кварк - 28.10.2004, 14:31 |
|||
|
||||
<Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: нет Всего: 64 |
Имхо вполне нормальный код, но не есть хорошо, что ты привызываешь процедурку в обработчиках исключения к эеземпляру обьекта tsl. Имохо там лучьше ставить исключения. Либо обычные Exception, либо создать своих наследников, т.е.:
Это сообщение отредактировал(а) <Spawn> - 28.10.2004, 17:16 -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
кварк |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.8.2002 Репутация: нет Всего: нет |
Ясненько. Спасибо. Учту.
|
|||
|
||||
Fantasist |
|
|||
![]() Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
Смысл? CreateOLEObject и так выбросит EOleSysError в случае неудачи создания объекта. В общем-то и на выполнения кода то же самое - исключение при работе с COM обектом выброситься такое же с более подробным мессаджем. Так что реально имеет смысл только блок try... finally. -------------------- Волны гасят ветер... |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: нет Всего: 154 |
кварк, приятно, что Вы вернулись.
-------------------- |
|||
|
||||
<Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: нет Всего: 64 |
FantasistЯ переделывал код кварк-а. В его случае он пишет обработчик ошибок для конкретных участков кода, видимо, для того, чтобы знать блок, в котором произошла ошибка. Ну дак вот, что бы не нарушить логику работы его я и сделал так. В противном случае, нельзя быть уверенным, что к какому блоку относится ошибка - к первому или второму. Вполне вероятно, что EOleSysError может быть сгенерирована и при работе с самим COM-обьектом.
-------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "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. |