Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.20;
Скачать: CL | DM;

Вниз

Почему может не работать Office 2003 Через OLE   Найти похожие ветки 

 
Inna_Z   (2007-03-26 17:07) [0]

Простенькая программка.
Не хочет работать с 2003-им офисом, но прекрасно выполняется на 2000-ом.

Что такого нового появилось в новом офисе и как его правильно настроить или установить чтоб это заработало?

При запуске программы выскакивает окошко о том что приложение ексель вызвало ошибку и будет закрыто...

var
  App: OleVariant;
begin
 try
   App := GetActiveOleObject("Excel.Application");
 except
   try
     App := CreateOleObject("Excel.Application");
   except
     ShowMessage("Cannot start!");
     Exit;
   end;
 end;

 App.Visible := True;
 App.Workbooks.Add[XLWBatWorksheet];
 App.Workbooks[1].Worksheets[1].Name := "Delphi Data";
end;


 
umbra ©   (2007-03-26 17:45) [1]


> о том что приложение ексель вызвало ошибку и будет закрыто.
> ..

на какой строчке?


>  App.Workbooks.Add[XLWBatWorksheet];

это неправильно. Add - метод, поэтому скобки должны быть круглые


 
Inna_Z   (2007-03-26 17:51) [2]

Оно сваливается ещё во время
 App := CreateOleObject("Excel.Application");

 этот код в принципе вообще можно убрать

App.Visible := True;
App.Workbooks.Add[XLWBatWorksheet];
App.Workbooks[1].Worksheets[1].Name := "Delphi Data";


 И весь тот код спокойно работает на 2000-ом офисе

 Дело даже не в екселе. Ни одно офисное приложение не удаётся подключить через ОЛЕ.

 Только не предлагайте ещё несколько раз переустановить офис.
 Может есть какие-то особенности по его установке, чтоб это работало?


 
umbra ©   (2007-03-26 18:58) [3]


> предлагайте ещё несколько раз переустановить офис

а дело идет к тому :). А если написать
App := CreateOleObject("Excel.Application.11");
ошибка остается?


 
Inna_Z   (2007-03-26 19:20) [4]

Да остаётся.

 И даже пробовала на 2005 студии а не на делфи сделать подобное
после подключения там екселя оно его просто не видело.
 
 Вот пробую переустановить ещё раз офис уже полностью почистив всё.
 Посмотрим что получится.
 Мне кажется проблема может быть только в этом.

 Но ключи в реестре все на месте. И пути правильные. И притом я изначально хочела подключить так MSProject (котрый переж этим только только установила), а только потом обнаружила что так не только он не работатет, но и все продукты офиса.

 Другие программы не офисовские робовала подключать, то было без проблем.


 
umbra ©   (2007-03-26 19:31) [5]

похоже на то, что осталось что-то от 2000-го оффиса. Я в подобных случаях сношу все оффисы, чищу руками все файлы (файлы могут быть в папках Program Files\Microsoft office, Program Files\Common files\Microsoft Shared\office, Documents and Settings\<username>\Application Data\office), на всякий случай перезагружаю машину, делаю проверку реестра на предмет ключей, ссылающихся в никуда и только потом устанавливаю нужный оффис


 
Inna_Z   (2007-03-27 12:47) [6]

Суть глюка оказалась в том что доустанавливала проджект я тогда с другого пакета офиса, с другим серийным номером...

 Обнаружилось случайно :-)
 После того как всё удалила поставила офис - программа заработала без проблем. А после того как установила MSProject - то снова появилась ошибка.

 Эх.



Страницы: 1 вся ветка

Текущий архив: 2007.05.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
15-1177336492
Kerk
2007-04-23 17:54
2007.05.20
Б.Н.Ельцин


1-1174434424
Интересующийся
2007-03-21 02:47
2007.05.20
Форма в SysTrey и SetForegroundWindow


2-1177516188
Romm
2007-04-25 19:49
2007.05.20
делаем ShareWare прогу


2-1177931656
allucard
2007-04-30 15:14
2007.05.20
Функция PaintTo - как убрать рамку?


4-1165922919
lock95
2006-12-12 14:28
2007.05.20
CompactFlash требуется считать по секторно