08:23 Подключение в приложение и активизация серверов СОМ. Часть 2 | |
В приложение, использующее серверы, необходимо подключать как минимум один из указанных в первой части статьи модулей. Например, при работе с сервером Word в ваше приложение должен быть включен оператор uses ... Word97; // только в Delphi 5, 6 и 7 В зависимости от подключенного модуля все обращения к серверу будут интерпретироваться в духе той или иной версии Microsoft Office. При подключении одного из указанных модулей, описывающих сервер, вы можете создать приложение, работающее или с Microsoft Office 97, или с Microsoft Office 2000, или с Microsoft Office XP. Но иногда требуется создать универсальное приложение, которое работало бы с любым офисом. Тогда надо подключить два или три модуля. Например: uses ... WordXP, Word2000; Тот модуль, который подключается последним (в данном примере Word2000) будет работать по умолчанию. А на свойства и методы другого модуля надо давать в тексте явные ссылки. Определить программно, объекты какого именно модуля надо использовать в процессе выполнения, можно воспользовавшись способами определения версии Windows. Например: var osVerInfo : TOSVersionInfi; Приведенный код задает переменной VerOffice значение, соответствующее версии Windows. В дальнейшем значение этой переменной можно проверять, чтобы выполнять операторы соответствующей версии Office. Например: if (VerOffice = OffXP) then Правда, это не сработает, если версия Windows не соответствует версии Microsoft Office. Например, в Windows 98 может быть установлен Microsoft Office 2000. В этих случаях помогает свойство Version серверов. Например, для объекта WordApplication1 класса TWordApplication это свойство содержит строку «10.0» для Word 2002 и строку «8.0» для Word 97. Так что распознавание этих версий может быть оформлено следующим образом: if (StrToInt(Copy(WordApplicationl.Version,0,Pos(' . ' , WordApplicationl.Version)-1) )) < 9 then ... //для Word 97 else ... //для Word 2000 и старше | |
|
Всего комментариев: 0 | |