не запускается Word
, при отключенной опции Project->Options->Packages->Build (Buil
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.9] |
|
|
не запускается Word
, при отключенной опции Project->Options->Packages->Build (Buil
|
|
|
|
|
Здраствуйте.
Подскажите, пожалуста как быть??????!!!!! Горю!!!! Не могу Word и Excel запустить! Уже описывалась такая проблема - не запускается Word при отключенной опции Project->Options->Packages->Build with runtime packages. http://forum.sources.ru/index.php?showtopic=203017&st=15# Давалась ссылка где была попытка решить проблему: http://borland.xportal.ru/forum/viewtopic.php?t=22167 Оттуда: Цитата После объявления переменных внутри метода класса ошибки "нестало". Пытался. не получилось. На нашем форуме Dave_Scream пишет : Цитата приходится таскать rtl100.bpl вместе с .exe на другие компы. Нашёл этот rtl100.bpl в System32. Это его надо таскать? Поклал в директорию с программой, отключил Project->Options->Packages->Build with runtime packages. Та же ошибка! Включил Project->Options->Packages->Build with runtime packages, указал там только \rtl100.bpl Тоже самое Подскажите, пожалуйста, как правильно таскать и что? |
|
Сообщ.
#2
,
|
|
|
|
странно. я всегда отключаю эти опции и никогда не имел таких проблем.
|
|
Сообщ.
#3
,
|
|
|
|
trainer, да мне тоже странно. Я чтоб такой ошибки не было в опции Project->Options->Packages->Build with runtime packages указал bcbofficexp.
И приложение затребовало список файлов: ![]() ![]() bcbofficexp100.bpl dbrtl100.bpl rtl100.bpl vcl100.bpl vcldb100.bpl borlndmm.dll cc3270mt.dll В сумме по весу = 4,8 Мб Их все пришлось покласть рядом с *.exe. |
|
Сообщ.
#4
,
|
|
|
|
Я таскал в своё время такие dll:
bcb2kaxserver50.bpl borlndmm.dll cc3250mt.dll vcl50.bpl этого всегда хватало. Кидаеш их в sistem или sistem32 |
|
Сообщ.
#5
,
|
|
|
|
niknet, а в Project->Options->Packages->Build with runtime packages что указывал?
|
|
Сообщ.
#6
,
|
|
|
|
У Архангельского на странице 468 всё подробно описано.
Птичку надо убирать на странице пакеты Build with runtime packages и на странице компоновщик Use dynamiic RTL. Всё должно работать и никакие dll-ки не надо таскать. А я таскал по первости(читать по дурости). Если ты печатаешь документы через Ворд или Ексель, проверь эффект, после печати закрой программу и запусти какой нибудь документ. Не появится ли черная дыра в документе. Если появится то ты наступаешь на те же грабли что и я. Удачи! |
|
Сообщ.
#7
,
|
|
|
|
Цитата Птичку надо убирать на странице пакеты Build with runtime packages и на странице компоновщик Use dynamiic RTL. Всё должно работать и никакие dll-ки не надо таскать Да ты шо?! А мне показалось, блин! niknet, ты учитываешь что Builder 2006?Я убрал опции Project->Options->Packages->Build with runtime packages и Use dynamiic RTL И опля ! На последней строчке Access violation ... : ![]() ![]() #include <vcl.h> #pragma hdrstop #include <ComObj.hpp> #pragma package(smart_init) Variant v_Word, v_Doc; v_Word = CreateOleObject("Word.Application"); v_Doc = v_Word.OlePropertyGet("Documents"); Цитата У Архангельского на странице 468 всё подробно описано. Архангельский "C++ Builder 6 и 2006 " 1-й том, 468 стр. - "Сообщения Windows и их обработка" Архангельский "C++ Builder 6 и 2006 " 2-й том, 468 стр. - "Работа с дисками, файлами и каталогами" Архангельский "Программирование в Delphi 7", 468 стр. - "Постоянное отслеживание информации на сервере" Чё ты там увидел объясняющего эту проблему?! Цитата Если ты печатаешь документы через Ворд или Ексель, проверь эффект, после печати закрой программу и запусти какой нибудь документ. Не появится ли черная дыра в документе Проверил - дырок нет. |
|
Сообщ.
#8
,
|
|
|
|
Опа!
Я с 5 Билдером работаю. И на "Программирование в С++ Builder 5 " книжонку тебя наталкивал. По 6-му ничего сказать не могу. Извини приятель! Но наверняка там есть. Про пакеты Общее описание концепции пакетов, там и рой! А по поводу дырок. Я же не знаю как ты писал программу тем более на разных компиляторах. Проверил у себя ещё раз, все компилится и сразу видно по исполняемому файлу он сразу возрастает почти в 5 раз. У меня программа большая и все доки я печатаю через Ворд и Ексель. Добавлено Вдогонку! Попробуй включи вот это #include "Excel_2K_SRVR.h" ексель замени на ворд я с Вордом работаю через компоненты. |
|
Сообщ.
#9
,
|
|
|
|
Вопрос считаю хоть не очень оптимально, но решённым. Вот решение кому надо:
1. Project->Options->Packages->Build with runtime packages = bcbofficexp 2. В текщую директорию покласть файлы: ![]() ![]() bcbofficexp100.bpl dbrtl100.bpl rtl100.bpl vcl100.bpl vcldb100.bpl borlndmm.dll cc3270mt.dll |
|
Сообщ.
#10
,
|
|
|
|
Цитата Дима @ Ээээ... А проверять, что объект создался, не надо?И опля ! На последней строчке Access violation ... я, вообще-то, всегда делаю так: ![]() ![]() Variant vExcel; // возвращает true в случае успешного подключения к OLE-серверу Excel bool __fastcall OpenExcel(HWND hWnd) { bool result = !vExcel.IsEmpty(); if( !result ) { try { // пытаемся получить уже открытый Excel - если таковой имеется vExcel = GetActiveOleObject("Excel.Application"); result = true; } catch( EOleSysError &e) { try { // не получилось - пытаемся запустить сервер Excel vExcel = CreateOleObject("Excel.Application"); result = true; } catch( ... ) { MessageBox(hWnd, _T("Не удалось запустить Excel\nОбработка прекращена"), _T("Ошибка"), MB_OK|MB_ICONSTOP); } } catch( ... ) { MessageBox(hWnd, _T("Не удалось подключиться к Excel\nОбработка прекращена"), _T("Ошибка"), MB_OK|MB_ICONSTOP); } } return result; } И никогда не таскаю за собой библиотек. |
|
Сообщ.
#11
,
|
|
|
|
trainer, чё-то я не понял
От того что я проверю создался-ли объект Excel я только корректно ошибку выведу. Объект от этого ж не появится |