Сравнительный анализ основных способов обмена данными между приложениями в MS Office
Итак, вы решили воспользоваться OLE-технологией передачи данных между приложениями, т.е. внедрить или установить связь с объектом другого приложения. Теперь надо сделать правильный выбор- что лучше: внедрить, связать или сделать и то и другое ? Существует много различных соображений, которые следует принимать во внимание при выборе того или иного решения. Вот некоторые из вопросов, на которые следует дать ответ для принятия правильного решения.
¨ Каков объем дисковой памяти, занимаемой вставляемым объектом? Является ли он настолько большим, что хранить его дополнительные копии затруднительно? Если это так, то нужно выбрать связывание объектов. Связь с объектом устанавливает путь к исходному объекту и приложению –источнику, с помощью которого был создан этот объект. При этом сам связанный объект может не сохраняться в контейнере. Тогда при открытии основного документа-контейнера связанный объект , хранящийся в отдельном файле, вставляется в нужное место. Если же вы внедряете объект, он обязательно станет частью основного документа, и его копия будет храниться в этом документе: тем самым появляется новый экземпляр этого объекта - его копия в контейнере.
¨ Изменяется ли объект в процессе использования созданного документа-приемника, или его состояние окончательно определено и модификации не подлежит? А если объект можно редактировать, то хотите ли вы, чтобы такие изменения автоматически отражались в документе-приемнике или же, напротив, желаете сохранить в документе –приемнике текущее состояние объекта ? Если вы хотите, чтобы изменяющееся состояние объекта отражалось в документе-приемнике, то вам необходимо использовать связывание, и при этом лучше отказаться от хранения копии связываемого объекта в документе-приемнике. Если документ-приемник содержит связь с внешним объектом, не сохраненным в документе-приемнике, то при его открытии автоматически устанавливается связь с обновленным объектом. Если же копия связанного объекта сохранена в документе-приемнике, то при его открытии обычно выдается сообщение с вопросом, нужно ли обновить установленную связь. Вы можете отключить появление этого сообщения, но в таком случае состояние объекта-источника может измениться, а вы об этом не узнаете. Тогда, если вы внедрили объект, предполагая, что он не будет изменен, однако впоследствии потребовалось внести исправления, вы можете отредактировать внедренный объект при условии, что имеете доступ либо к его измененной копии, либо к приложению-источнику, с помощью которого этот объект был создан.
¨ Может ли вставляемый объект-источник удален, перемещен или доступ к нему может быть потерян по какой-либо другой причине? Например, вы установили связь с объектом- источником, получив к нему доступ по локальной компьютерной сети. Если впоследствии сетевой диск окажется недоступным или владелец исходного объекта-источника изменит его местоположение, закроет к нему доступ или вообще удалит этот файл, то вы можете оказаться в неприятной ситуации. В этой ситуации лучше внедрить такой объект.
¨ С помощью какого приложения был создан вставляемый объект? Поддерживает ли исходное приложение связь и внедрение объекта? Если это так, то вы можете выбирать между внедрением и установлением связи. Поддерживает ли исходное приложение динамический обмен данными (DDE)? Если исходное приложение поддерживает DDE, но не поддерживает OLE, вы можете установить связь, но не можете внедрять такие объекты. Если исходное приложение не поддерживает ни OLE, ни DDE, вам, возможно, все же удастся вставить эти объекты как текстовый или графический файл ( например, как файл формата BMP). Однако при этом не будет установлено прямой связи с исходным приложением, и вы не сможете выполнять его редактирование, как это разрешено делать с нормальным внедренным объектом.
Надеемся, что после приведенного выше обсуждения вы сможете принять обоснованное решение о том, какой именно метод вставки объекта вам больше подходит – внедрение или установление связи.
Литература
1. Гюнтер Борн. Форматы данных : Пер. с нем. –К.: Торгово-издательское бюро BHV ,1995-472c
2. Федор Новиков, Андрей Яценко. Microsoft Office XP в целом // СПб, Питер, 2004 г , 986 с.