Ошибка при вызове CreateOleObject()
, как устранить ошибку?
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.43] |
|
|
MSDN Library
FAQ раздела
Поиск по разделу
Как правильно задавать вопросы
Ошибка при вызове CreateOleObject()
, как устранить ошибку?
|
|
|
|
|
У меня следующий код:
![]() ![]() procedure TForm1.Button1Click(Sender: TObject); var vExcel:Variant; begin try vExcel:=GetActiveOleObject('Excel.Application'); except try vExcel:=CreateOleObject('Excel.Application'); except ShowMessage('Excel open error'); end; end; end; Обе OLE фунции выдают ошику 'Microsoft Office Excel - обнаружена ошибка. Приложение будет закрыто. Приносим извинения за неудобства'. Как выяснилось ошибку генерирует DW32.exe. В чем здесь дело и как с этим бороться. |
|
Сообщ.
#2
,
|
|
|
|
Цитата y307 @ Как выяснилось ошибку генерирует DW32.exe А что есть DW32.exe ? |
|
Сообщ.
#3
,
|
|
|
|
Находится в Program Files\Common Files\Microsoft Shared\DW\DW20.EXE и назывыется
"Microsoft Application Error Reporting" Можно также эапустить утилитой 2003-го офиса "Восстановление приложений Microsoft Office" |
|
Сообщ.
#4
,
|
|
|
|
Понятно. А офис переустановить не пробовал?
|
|
Сообщ.
#5
,
|
|
|
|
DW32 - это Доктор Ватсон, системная тулза, которая рапортует об ошибках.
Попробуй vExcel: OLEVariant; Если не поможет - пробуй на сыром API вызвать CreateInstance и посмотреть HRESULT-код ошибки. Возможно, в самом деле надо офис переустановить. |