Excel Ожидает Пока Другое Приложение Завершит Действие Ole Как Бороться • Настройка воспроизведения

Microsoft excel ожидает пока другое приложение завершит действие ole

Помогите, знающие люди. Кто работал с OLE-интерфейсом в Buildere?Как вставить объект какой-нибудь в Excel на Buildere.Макрос в VBA выглядет так:

Не пойму, в чем дело. На строчке obj.Exec(. ) вываливается exception.

exception памяти для завершения операции’

На винте места достаточно, оперативки правда 128, но помоему ему на это пофигу.Странно. Может нужно под операцию выделить как-то память?*. Че-то совсем запутался.

Правда я вставлял BMP’шку, а Вы CDW’шку может быть проблема в этом?

Могу показать вариант не через OleCreate. а через _ApplicationDisp.

Интересное кино. Я пока тоже пытаюсь для начала вставить BMP-шку, потом мне необходимо вставлять любой объект. Может все дело в системе и Buildere: у меня Win2000SP2, BCB6, Excel2000 . Или в Excel 2000.

. а что такое _ApplicationDisp?Можно ли через него записывать в ячейку Excel, читать, вставлять объекты, ну и все остальное?Если не трудно покажите как это делается (вставка объекта). Возможно с ним у меня не будет таких проблем.Спасибо.

Спасибо. Выяснилась одна интересная деталь. Вставка объекта в Excel программно через (OlePropertyGet) в связке BCB6+. — не работает!Похоже Borland че-то намудрил.BCB5+XP+2000Office — OK.

Обнаружил, что технология взаимодествия с Excel через OLE, не очень хороша, в плане быстродействия.

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

История появления

Excel Ожидает Пока Другое Приложение Завершит Действие Ole Как Бороться • Настройка воспроизведения

Новый принцип работы в буфере обмена (в области оперативной памяти, предназначенной для временного хранения созданного объекта) совершенствовался:

  • Версия 1.0 появилась в 1990 году и позволила оперировать активными соединениями между двумя документами и внедрять один в другой вне зависимости от типа (текст, фото и прочие). Поскольку первый вариант разрабатывался на базе DDE, то остались основные недостатки несинхронной связи (например, быстрое нарушение связи при изменении маршрута доступа).
  • Версия 1.1 дала возможность сохранять исходник в собственном формате, что позволило внедрять из буфера обмена скопированную часть другого документа.
  • Версия 2.0 фактически является надстройкой над архитектурой COM, резвившейся на базе версии 1.1. Component Object Model – это модель многокомпонентных объектов, которая обеспечивает объединение отличающихся по формату текстов, рисунков, фото из любых источников.
  • ActiveX – это современная версия OLE 2.0, которая была переименована в 1996 году. Изначально она использовалась при необходимости вставить мультимедийные данные.

На данный момент технология OLE занимается внедрением и связыванием составных документов, а группа ActiveX работает в глобальном масштабе: с приложениями, библиотеками, системным программным обеспечением.

Особенности

Технология определяет те COM интерфейсы, через которые интерпретатор языка будет общаться с объектом.

Типы данных OLE Automation (могут использоваться в свойствах, методах и событиях):

Другие типы данных (структуры, указатели не на COM объект, другие представления массивов и строк) технологией не поддерживаются.

Также технология поддерживает type libraries — информацию о типах свойств/методов/аргументов, доступную во время выполнения (нечто вроде Reflection в .NET).

Компилятор Microsoft C++ поддерживает директиву #import — включение type library (.tlb или же исполняемого файла, в который она вшита). При этом из исходного файла генерируются автоматически заголовки Си++, использующие средства comdef.h (смарт-пойнтеры на COM объекты и т. д.).

  • проектирование интерфейсов, с учетом ограничения на типы данных (нет структур и т. д.).
  • написание IDL файла (вручную или же с помощью визардов из Visual Studio).
  • написание классов, реализующих интерфейсы, объявленные в IDL.
  • midl.exe компилирует IDL, создавая бинарный файл .tlb (type library, интерфейсы для извлечения информации из неё предоставлены oleaut32.dll), заголовок Си/Си++ и .c файл, в котором объявлены все GUIDы из IDL
  • .c файл с GUIDами строится вместе с проектом
  • заголовок включается в .c/.cpp файлы, содержащие реализацию класса
  • link.exe может вшить .tlb в создаваемый исполняемый файл (как ресурс 1 TYPELIB)

2.1 Внедрение

Один из методов использования данных исходного документа в целевом документе. Позволяет вставлять копию объекта из одного документа в другой без ссылки на исходный документ.

Внедренные в чертежи данные при модифицировании исходного документа не обновляются. Объекты можно внедрять в чертежи путем их копирования в буфер обмена с последующей вставкой в файл другого приложения. Таким образом, например, производится добавление логотипа фирмы, созданного в другом приложении, в чертеж.

Для внедрение
OLE
-объекта в другое приложение необходимо:

Excel Ожидает Пока Другое Приложение Завершит Действие Ole Как Бороться • Настройка воспроизведения

Рис. 8. Внедрение
OLE
-объекта из приложения
MathCAD
в
Excel

Как вызвать объект Ole и не ждать завершения его работы

Создание архивных файлов

Выполнив задания этой темы, вы научитесь:- упаковывать файлы в архив с помощью программы WinRAR;
— распаковывать файлы из архива.

Работая на компьютере, вы можете столкнуться с такой проблемой, как недостаток свободного места на дисках, а при копировании файлов на дискету может оказаться, что размер файла больше ее емкости. В этом случае прибегают к архивации файла, при которой происходит уменьшение размера файла за счет сжатия хранящейся в нем информации.

Уменьшить объем файла можно, исключив избыточность представления информации в файле. Например, обычный текст содержит повторяющиеся слова и фразы. Можно исключить повторения, заменив все дублирующиеся фрагменты ссылкой на первый подобный фрагмент. Сжимать можно как один файл, так и несколько файлов, которые в сжатом виде помещаются в архивный файл.

Архивный файл — файл, содержащий в сжатом виде один или несколько файлов и служебную информацию.

Архивация (упаковка в архив) — размещение исходных файлов в архивный файл.

Разархивация (распаковка из архива) — восстановление файлов из архивного файла в том виде, какой они имели до помещения в архив.

Программы, осуществляющие упаковку и распаковку файлов, называются программами-архиваторами. Программы-архиваторы отличаются друг от друга методами сжатия, возможными функциями и интерфейсом. Из числа наиболее популярных можно выделить WinRAR, WinZIP, ARJ.

Задание 1.55.

Используя программу-архиватор WinRAR, упакуйте в архив файлы различных типов. Проанализируйте результаты архивации. Удалите исходные файлы. Восстановите файлы из архивных.

При выполнении задания вы должны освоить следующие технологические приемы:

• помещение файлов в архив;
• восстановление файлов из архива;
• помещение нескольких файлов в архив.

Технология работы

1. Создайте на диске С: папку Архивы и скопируйте в нее несколько файлов различных типов, например BMP, DOC, EXE.

2. Запустите программу — архиватор WinRAR, выбрав в меню Пуск команду Все программы ► WinRAR ► WinRAR.

3. Откройте в окне программы WinRAR папку Архивы (рис. 1.27).

• щелчком мыши выделите файл формата BMP в окне программы WinRAR;
• щелкните на кнопке Добавить (Добавить файлы в архив) на панели
инструментов — откроется окно, в котором можно уточнить настройки архивации (рис. 1.28);
• по умолчанию файлу архива назначается имя исходного файла; при необходимости
укажите другое имя для архива в поле Имя архива (рис. 1.28);

Excel Ожидает Пока Другое Приложение Завершит Действие Ole Как Бороться • Настройка воспроизведения

• выберите формат архивного файла — RAR или ZIP;
остальные параметры можно оставить без изменений;
• щелкните на кнопке ОК.

5. Сравните размеры исходного файла и архива; во сколько раз архив меньше исходного файла?

6. Заархивируйте текстовый файл (DOC), повторив действия, указанные в п. 4. Сравните размеры исходного файла и архива.

7. Заархивируйте исполняемый файл (ЕХЕ) и сравните размеры исходного файла и архива.

• выделите исходные файлы, щелкая на них мышью при нажатой кнопке Ctrl;
• щелкните на кнопке Удалить на панели инструментов.

• выделите архивный файл, содержащий файл формата BMP;
• щелкните на кнопке Извлечь в
(Извлечь файлы из архива в указанную папку) на панели инструментов;
• в открывшемся диалоговом окне в поле Путь для извлечения
укажите папку Архивы в качестве папки, в которую следует
поместить распакованный файл (рис. 1.29);
• нажмите кнопку ОК.

10. Распакуйте из архива текстовый файл, повторив действия, указанные в п. 9.

• в выделите несколько файлов, по очереди щелкая на них мышью при нажатой кнопке Ctrl;
• щелкните на кнопке Добавить на панели инструментов;
• в открывшемся окне в поле Имя архива укажите имя, например Группа файлов;
• выберите формат архивного файла, например ZIP;
• щелкните на кнопке ОК.

Задание 1.56.

Посмотрите информацию о размере исходных файлов и архивных файлов. Файлы какого типа сжимаются более эффективно, менее эффективно?

Вы здесь

Главная › Программы для работы с графикой › Adobe PageMaker › Глава 11. Связывание файлов

Преимущества и недостатки OLE

Теперь, когда мы подробно рассмотрели оба метода импорта и связывания, можно сделать выводы о недостатках и преимуществах каждого из них. Поскольку авторы являются консервативными приверженцами традиционной технологии Links и не скрывают этого факта, начнем с рассмотрения недостатков технологии OLE.

Еще раз подчеркнем, что многочисленные недостатки механизма OLE могут быть в будущем преодолены развитием этого механизма и ситуация может повернуться в его пользу. Но это дело будущего, а пока подведем небольшие итоги.

От OLE к ActiveX

Новые возможности многим обязаны СОМ, предоставившей общую парадигму
взаимодействия программ любых типов: библиотек, приложений, системного
программного обеспечения и др. Вот почему подход, предложенный СОМ, можно
использовать при реализации практически любой программной технологии, и его
применение дает немало существенных преимуществ.

Типы файлов OLE

Ассоциация основного файла OLE

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

Microsoft Windows, разработчик — Microsoft Corporation

Microsoft Office, разработчик — Microsoft Corporation

Рис. 10

Excel ожидает завершения OLE операции другим приложением — Вордом

​«OK»​ изображений»​​Открывается Редактор реестра. В​​ вкладку​​. Жмем на кнопку​​Скачать последнюю версию​​ образом.​

​Пробовал найти по​ — пропущенных нет.​Xusinboy bekchanov​Или может возможно​ Private Declare Function​

​заглючил после перехода​«Установить обновления»​​«Изменить программу»​​. Проверяем, не вернулась​​. Кликаем по кнопке​​ левой части редактора​​«Совместимость»​

​В Ворде 2007​ ошибке. Нашел ,​Вобщем, даже не​​: Не копируй как​

​ увеличить время ожидания​​ CloseHandle Lib «kernel32″​

​ lpTitle As String​ в котором пользователь​​ на новый.​​.​​.​​ ли проблема. Если​​«OK»​​ расположено древо каталогов.​

Резюме файла OLE

Файлы с расширением OLE были идентифицированы на настольных компьютерах (и некоторых мобильных устройствах). Они полностью или частично поддерживаются Windows и Mac.

Рейтинг популярности данных файлов составляет «Низкий» и они обычно не используются.

Вставка объекта в электронную таблицу Excel

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки

Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы

Для удобства также приводим ссылку на оригинал (на английском языке).

Для включения содержимого из других программ, таких как Word или Excel, можно использовать связывание и внедрение объектов (OLE).

1. внедренный объект не имеет соединения с исходным файлом.

Если вы хотите, чтобы информация в конечный файл обновлялась при изменении данных в исходный файл, используйте связанные объекты.

При использовании связанного объекта исходные данные сохраняются в исходном файле. В конечном файле выводится представление связанных данных, в котором хранятся только исходные данные (и размер объекта, если объект является диаграммой Excel). Исходный файл должен быть доступен на вашем компьютере или в сети для поддержания связи с исходными данными.

Связанные данные могут быть обновлены автоматически при изменении исходных данных в исходном файле. Например, если выбрать абзац в документе Word, а затем вставить его как связанный объект в книгу Excel, то при изменении данных в документе Word можно обновить данные в Excel.

Если вы не хотите обновлять скопированные данные при изменении в исходном файле, используйте внедренный объект. Версия исходного кода полностью внедрена в книгу. Если вы копируете данные как внедренный объект, конечный файл требует больше места на диске, чем при связывании данных.

2.2 Перетаскивание объектов из одного приложения в другое

Рис. 9. Перетаскивание OLE
-объекта из MathCAD в Excel

Перспективы ActiveX и OLE

Итак, OLE — это набор стандартов для связи и внедрения объектов при создании
компонентов программного обеспечения. Одним из стандартов OLE является
спецификация модели составного объекта (или COM), основа для бинарных соединений
между компонентами.

Знайка, самый умный эксперт в Цветочном городе
Мнение эксперта
Знайка, самый умный эксперт в Цветочном городе
Если у вас есть вопросы, задавайте их мне!
Задать вопрос эксперту
Это позволяет одному приложению для редактирования отправить часть документа в другие приложения, а затем импортировать или вернуть его вместе с другим содержимым. Если же вы хотите что-то уточнить, я с радостью помогу!
2] Откроется диалоговое окно параметров Excel. Перейдите на вкладку «Дополнительно» и прокрутите вниз до области «Общие». Там проверьте ‘Игнорируйте другие приложения, которые используют динамический обмен данными (DDE)‘.
excel ошибка при направлении команды приложению

Команды действия ole в powerpoint — Новости с мира ПК

  • Версия 1.0 появилась в 1990 году и позволила оперировать активными соединениями между двумя документами и внедрять один в другой вне зависимости от типа (текст, фото и прочие). Поскольку первый вариант разрабатывался на базе DDE, то остались основные недостатки несинхронной связи (например, быстрое нарушение связи при изменении маршрута доступа).
  • Версия 1.1 дала возможность сохранять исходник в собственном формате, что позволило внедрять из буфера обмена скопированную часть другого документа.
  • Версия 2.0 фактически является надстройкой над архитектурой COM, резвившейся на базе версии 1.1. Component Object Model – это модель многокомпонентных объектов, которая обеспечивает объединение отличающихся по формату текстов, рисунков, фото из любых источников.
  • ActiveX – это современная версия OLE 2.0, которая была переименована в 1996 году. Изначально она использовалась при необходимости вставить мультимедийные данные.

Важно: Пользоваться реестром следует очень внимательно, удаляя только рекомендованные подразделы. Случайное уничтожение или изменение других файлов и папок может привести к необходимости восстановления реестра и даже переустановке Windows.

Часть 1. Работа с OLE-сервером Excel.

Рис 1.1 Итоговый документ, сформированный контроллером.

Для того, чтобы запустить приложение Word или Excel из программы на «Borland C++ Builder» достаточно выполнить, например, следующий код:

В директории, откуда запущена программы или по указанному пути (например, вместо *.xls указан файл, а вместо параметра NULL путь C:\AB) должен находиться файл с расширением соответственно .doc или .xls, пусть даже пустой.

Приложения будут запущены (есть и другие способы запуска), но управлять ими нельзя — с момента запуска они автономны от запустивших их приложений.

Для запуска Word и Excel как серверов автоматизации необходимо выполнить примерно одни и теже действия. Word посвящен следующий раздел, а здесь далее речь пойдет исключительно о сервере Excel.

1.1 Получение доступа к интерфейсу Application для Excel.

2. Определить — лучше глобально (для наглядности и удобства) — переменные, отражающие иерархию объектов Excel
Приложение->Набор книг->Книга->Набор страниц->Страница->ячейки(ячейка):

Можно видеть у отдельных авторов в некоторых примерах конструкцию вида Excel.Application.9 и т.п. , что не является обязательным, а скорее всего и вредным — ориентация будет на конкретную библиотеку *.olb. Без указания версии Offise приложение берет ее из реестра (HREY_CLASSES_ROOT раздел Word.Application ключ CurVer, там можно прочитать Excel.Application.8 или Excel.Application.9 или . ).

1.2 Интерфейсы и константы

Список интерфейсов и констант в Builder можно получить при просмотре библиотеки типов Microsoft Word/Exvel Object Library.

Создав пустое приложение (File/New/Application) и выбрав пункт меню в Buildere File/Open, указав в списке возможных файлов Type Library и выбрав соответствующую библиотеку типов и загрузить ее (для Excel в зависимости от версии это, например, Excel9.olb, для Word — MSWord9.olb). Библиотеки, как правило находится в директории

Загрузка идет несколько минут (библиотеки велики) и по окончании будет создана панель навигатор (Рис 1.2). с описанием всех использованных констант, а также свойств и методов содержащихся в сервере объектов.

При создании этих файлов появятся сообщения об ошибках, связанные с тем, что в коде Excel и Word могут использоваться зарезервированные слова С++.

При использовании констант будем использовать их числовые значения!! — иначе в файл .cpp придется включать модуль с указанием конкретной версии Offise — например:
#include

Как показано на рисунке, например константа xlBuiltIn имеет значение 21.

Для продолжения работы после сохранения файла *.idl и закрытия *.olb необходимо вернуться в рабочую директорию проекта.

Свойств и методов для серверов Word и Excel в указанных библиотеках пожалуй не менее чем в компонентах Builder, поэтому для ориентации при написании программ в среде Borland C++ Builder лучше использовать так называемый » хитрый метод «.

Суть его в переводе макроса из кода Visual Basic в С++ код. Этот способ также позволяет просмотреть имена констант линий, стилей, цветов . Уже по именам легко найти их значения в библиотеках и в сохраненном файле .idl.

1.3 Создание рабочих книг

Рассмотрим создание двух рабочих книг из 3х и 5ти листов.

Создаем новое приложение (File/New/Application) и сохраним его файлы в директории по умолчанию (Projects) c именами по умолчанию Unit1.cpp, Unit1.h, Unit1.dfm, Project1.cpp, Project1.bpr. Имена на данном этапе не цель, хотя не возбраняется создать новую директорию и дать приложению и файлам подходящие имена.

Переменные соответствующие используемым в программе объектам, а именно:

определим сразу все и глобально — или в файле Unit1.h (в разделе private:), или перед функциями в Unit1.cpp, хотя для данного этапа требуются пока не все переменные и можно определить нужные и локально.

Переменная fStart служит индикатором того, что сервер запущен.

Разместим на форме три кнопки (из вкладки Standart компонент TButton). Подписывать кнопки также не будем (сейчас это тоже не цель), но запомним, что по первой кнопке будем работать с таблицей, по второй с диаграммой, а по третьей закрывать сервер и приложение. Выполним два левых клика по Button1 и Button3, создаем таким образом обработчики события нажатия кнопки.

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

В обработчике нажатия первой кнопки начнем формировать код программы.

В принципе конструкцию try catch желательно использовать со всеми Ole вызовами, но громоздкость программы сделает ее ненаглядной. В дальнейшем можно оформить все используемые вызовы в виде класса, но на данном этапе задача стоит в освоении богатства возможностей вызовов, а не ловля возможных букашек. Да и все, приведенные сдесь вызовы 100% работоспособны.

Сделаем приложение видимым (лучше наверное всетаки в конце, но так нагляднее — будет видно как идет заполнение таблиц и т.п.).

Переменной vVarBooks присваивается значение Workbooks — свойство объекта Excel.Application, содержащее набор рабочих книг Excel.

SheetsInNewWorkbook задает количество листов в создаваемой книге, пусть в первой книге их будет 3(Кстати по умолчани тоже создается книга, содержащая три листа).

Количество листов во второй создаваемой книге, пусть будет 5.

Переменная vVarBook содержит ссылку на текущую книгу. (Пусть текущая книга 1).

Переменной vVarSheets присваиваем значение Worksheets — свойство объекта Excel.Application, содержащее набор страниц книги Excel.

Теперь первый раз запустим приложение и порадуемся что все работает как задумано и на экране две книги Excel и в первой два из трех листов раскрашены.

1.4 Вывод информации в ячейки

Для заполнения таблицы используем датчик случайных чисел. Таблицу будем рисовать в первой книге на желтом листе. Так как перед этим мы работали с первой книгой, то она на данный момент активна.

2. Выбрать ячейку или группу ячеек на выбранном листе. Для отдельной ячейки (x и y координаты ячейки):

Знайка, самый умный эксперт в Цветочном городе
Мнение эксперта
Знайка, самый умный эксперт в Цветочном городе
Если у вас есть вопросы, задавайте их мне!
Задать вопрос эксперту
Прокрутите вниз до области Общие и установите флажок Игнорировать другие приложения, использующие динамический обмен данными DDE. Если же вы хотите что-то уточнить, я с радостью помогу!
Проверенный метод, что делать, если Excel не отвечает — поменять принтер, установленный по умолчанию. Рекомендация связана с тем, что в момент включения оборудование проверяет возможность работы с принтером. Если нет связи, возможно появление проблемы. Рассмотрим, что делать в таком случае:

Как отключить ожидание действия в excel

Можно связать или внедрить один и более слайдов или можно внедрить целую презентацию. Когда презентация PowerPoint внедрена в документ, приложение Word в ответ на двойной щелчок объекта презентации запускает демонстрацию слайдов PowerPoint. В документе редактирование презентации невозможно. Объект презентации может быть только внедрен, но не связан.

Оставить отзыв

Публикуя свою персональную информацию в открытом доступе на нашем сайте вы, даете согласие на обработку персональных данных и самостоятельно несете ответственность за содержание высказываний, мнений и предоставляемых данных. Мы никак не используем, не продаем и не передаем ваши данные третьим лицам.