Поиск:

Ответ в темуСоздание новой темы Создание опроса
> OLE для работы с MS Word, Выходит ошибка ! 
:(
    Опции темы
PTI
  Дата 5.5.2008, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



        Привет всем! При написании некоторой программы, возникла необходимаость отобразить выходные  данные в текстовом редакторе, в моём случае я решил использовать MS Word 2003
Нашёл 2 способа как это можно осуществить:
                         1. С помощь стандартных компонентов Borland c++ 6.0 на вкладке office2k
                         2. И с помощью механизма ОLE.

С 1 пунктом я разобрался, а вот со вторым возникла, такая проблема. Ниже изображён исходный код, который при нажатии на кнопку должен открыть шаблон. Шаблон был предварительно создан в MS Word

Код

void __fastcall TPasForMonth::BExportClick(TObject *Sender)
{
 VarApp=CreateOleObject("Word.Application");
 vVarApp.OlePropertySet("Visible",true);
 vVarDocs=vVarApp.OlePropertyGet("Documents");
 vVarDocs.OleProcedure("Add",ExtractFileDir(Application->ExeName)+"\\Shablon\\Paroles.dot",false,1);
 vVarDoc=vVarDocs.OleFunction("Item",1);
 vVarDoc.OleProcedure("Activate");
}



Сервер запускается, но вот на строкеv "VarDocs.OleFunction("Open",ExtractFileDir(Application->ExeName)+"\\Shablon\\Paroles.dot");" выходит ошибка "EOleSysError with message 'не верный тип переменной ' "
Если вместо этой строки я вставлю " vVarDocs.OleProcedure("Add");" то всё работает. Однако же мне нужно чтоб открывался мой шаблон.
   Подскажите пожалуйста в чём дело, исходный текс был построен на основе примера который, якобы должен работать. Так что я в заблуждении. 
то откроется Normal.dot - стандартный шаблон.
PM MAIL   Вверх
mrbrooks
Дата 5.5.2008, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



PM MAIL   Вверх
PTI
Дата 6.5.2008, 07:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



спасибо конечно за ссылку , но я там какраз таки и читал, и по исходнику видно что делал всё как там сказано. Но увы не получается открыть шаблон(((. Ну помогите пожалуйста разобраться.
PM MAIL   Вверх
PTI
Дата 6.5.2008, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



К моему удивлению никто не мог мне помочь на этом форуме, сам всё-таки с трудом разобрался. Кому интересно, оказывается, что в этом методе 
vVarDocs.OleProcedure("Add",ExtractFileDir(Application->ExeName)+"\\Shablon\\Paroles.dot",false,1);
путь нужно указать вот так:
AnsiString Dir=ExtractFileDir(Application->ExeName)+"\\Shablon\\Paroles.dot";
vVarDocs.OleProcedure("Add",Dir.c_str(),false,1);
В этом случае шаблон откроется!!!!! 
Така вроде мелочь, но пол дня потрачено smile 


PM MAIL   Вверх
PTI
Дата 6.5.2008, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



У меня тут ещё вопросик образовался). Почему через OLE щбъект обращения к MS Word такие тормозные , при вводе в ячейки, четырёх таблиц ( в каждой таблице примерно по 30 строк и 6 стьолбцов) текста программа проделывает это в течении 5 минут smile . Глядя на её работу, можно заметить, что на одну ячеку у неё уходит от 1 до 2 сек. Чё за штука такая? Неужели мой проц не способен это сделать быстрее. Или же я не разобрался в настройках OLE . Или это норма для OLE 

Это сообщение отредактировал(а) PTI - 6.5.2008, 13:59
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


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

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




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


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

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