Чтение онлайн

ЖАНРЫ

Интернет-журнал "Домашняя лаборатория", 2007 №7
Шрифт:

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

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

Рис. 7.22. Ручная установка сертификата. Очередной шаг.

В

окне информации о сертификате, которое откроется после нажатия этой кнопки, следует нажать следующую кнопку — "Установить сертификат". Запустится мастер импорта сертификатов (рис. 7.23).

Рис. 7.23. Мастер импорта сертификатов.

Для прохождения мастера достаточно во всех его диалоговых окнах нажимать кнопку "Далее…" или "Готово". Появление сообщения с запросом (рис. 7.24) является окончанием процесса.

Рис. 7.24. Ручная установка сертификата. Последний запрос.

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

* * *

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

Для добавления электронной подписи, например, к файлу Word следует открыть вкладку "Безопасность" диалогового окна "Сервис — Параметры" и нажать кнопку

"Цифровые подписи". Добавление цифровой подписи к документу осуществляется (как это ни странно!) кнопкой "Добавить" в открывающемся по нажатию предыдущей кнопки окне (рис. 7.25).

Рис. 7.25. Подписывание файла Word.

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

ПОЛЕЗНЫЕ СОВЕТЫ

В этой главе вы найдете набор советов по программированию на VBA, которые могут помочь вам в решении тех или иных задач. Кроме того, в конце главы есть несколько заметок на различные темы, связанные с программированием на Visual Basic for Applications.

* * *

Настройки программы можно сохранять в системном реестре Windows. Для этого служит команда "SaveSetting", с помощью которой можно поместить в системный реестр строку или число. Она имеет формат "SaveSetting "Имя приложения","Имя раздела", "Ключ", "Значение"". Имя приложения, имя раздела и ключ — указатели места, в котором сохраняется значение. Получить значения из реестра можно командой "GetSetting"

с синтаксисом "GetSetting "Имя приложения","Имя раздела", "Ключ", "То значение, которое следует вернуть, если такого ключа, как указанный в предыдущем параметре, в реестре нет"", а удалить — командой "DeleteSetting "Имя приложения","Имя раздела", "Ключ"". Например:

SaveSetting "Макросы", "Макрос1", "Имя папки", "C: \MyPapka"

papka = GetSetting "Макросы", "Макрос1", "Имя папки", "C: \Docs"

* * *

Записать список всех установленных в системе шрифтов в массив можно таким способом:

ReDim shrifti(FontNames.Count) As String

For r = 1 To FontNames.Count shrifti(r) = FontNames(r)

Next r

WordBasic.SortArray shrifti

(В массив "shrifti" размером в количество шрифтов в системе помещается список имен всех установленных в системе шрифтов. Команда "WordBasic.SortArray" сортирует его по алфавиту.)

* * *

Условие "If Selection. Type = wdSelectionIP Then…" выполнится, только если в документе не выделен фрагмент текста.

* * *

Если вы решили хранить какую-нибудь информацию, нужную при работе программы, в отдельном файле, не стоит экспериментировать с командами чтения и открытия файла типа "open", "write" и др. Просто открывайте файл в Word как текстовый с помощью команды "Documents. Open…" и пишите в него обычными средствами записи текста: "Selection.Text = "Мой текст"".

* * *

Посмотрите повнимательнее свойства, объекты и методы таких объектов, как "Application" и "System" (для этого достаточно набрать название объекта и поставить после него точку, — список возможных продолжений отобразится сам — рис. 8.1). Среди них можно найти немало весьма интересных и полезных, вроде средства задания и получения значений ширины и высоты окна Word, информации о языке данной версии Office, метод чтения данных из произвольного места реестра и многое другое.

Рис. 8.1. Свойства и методы объекта System — склад весьма интересных вещей….

Вот некоторые полезные свойства объекта Application.

Application.CapsLockпоказывает, горит ли на клавиатуре индикатор CapsLock.

Application.NumLock — показывает, горит ли на клавиатуре индикатор NumLock.

Application.Caption — сообщает заголовок окон запущенной программы (для Word, например, это — "Microsoft Word"). Этот заголовок можно поменять: так, команда "Application.Caption = "Мой Word"" заменит традиционный заголовок окна Word'а на тот текст, что указан в скобках.

Application.DisplaystatusBar — сообщает, отображается ли статусная строка. С помощью этого свойства можно и убрать ее, и снова восстановить — командами Application.DisplayStatusBar=False и Application.DisplaystatusBar=True соответственно.

Application.EnableCancelKey — в случае установки в True запущенный макрос нельзя будет прервать нажатием Ctrl+Break.

Application.Height и Application.Widht — возвращают соответственно высоту и ширину окна приложения. С помощью этих свойств можно и задать размеры окна приложения, скажем, расширить окно Word до нужной ширины.

Поделиться с друзьями: