Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
Поиск по сайту


 

   Базы данных -> Access -> Настройка программ Access 2000


Игорь Новиков

При разработке программ с помощью пакета Microsoft Access 2000 часто приходится вводить ограничения на доступ к функциям СУБД - ведь предоставлять им следует только необходимую функциональность, лишние возможности могут стать причиной проблем. В библиотеке Microsoft Office Extensions1 имеется множество программ Access, иллюстрирующих возможные приемы защиты и настройки интерфейса (программы 435, 443, 461, 548). В этой статье рассмотрены некоторые варианты такой настройки.

Настройка интерфейса СУБД Access

Основной программный интерфейс для доступа и управления объектами баз данных - Data Access Objects (DAO), "корень" объектной иерархии - объект DBEngine. С его помощью реализуются многие функции, в том числе настройка интерфейса для "рабочих пространств" Access (workspace). Средствами подчиненного объекта типа Workspace выполняется управление текущим сеансом - последовательностью операций за промежуток времени между подключением программы к механизму управления базой данных и ее отключением. Любая из подключенных за время такого сеанса баз данных отражается среди объектов DBEngine как отдельная ветвь - подчиненный объект типа Database. Этот объект также управляет различными операциями; но в данном случае нас интересуют лишь его средства для настройки конфигурации и интерфейса доступа.

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

...
For Each obj In DBEngine.Workspaces(0).Databases(0).Properties
Print #FFile, obj.Name, " - ", IIF(IsNumeric(obj.Value), Str(obj.Value), obj.Value))
Next
...

После выполнения этой программы в файл #FFile будут записаны значения параметров конфигурации и настройки для текущего файла Access. При ближайшем рассмотрении можно обнаружить среди них многие из параметров, доступных в меню Сервис|Параметры запуска в основном окне Access, которые позволяют настроить интерфейс. Однако в этом списке представлены также параметры, которые доступны только программе. Например, AllowBypassKey (запрет на использование клавиши u, позволяющей принудительно прервать загрузку программ из файла базы данных Access) или AllowBreakIntoCode (разрешение на использование комбинации клавиш sr для прерывания обработки программы).

В библиотеке Office Extensions имеются специальные программы, позволяющие проводить настройку файлов Access наглядными и простыми в использовании средствами. Программа "SG Database Properties Tool v 1.1 - надстройка для изменения свойств БД Access 97/2000" (540) (автор Сергей Гаврилов, sgsoft@mail.ru) дает возможность задавать значения перечисленных свойств объекта Database. Другая программа - "AdmTools v 1.1 - утилита администрирования баз данных в Access 97" (471) (автор Юрий Прус, ms_master@mail.ru) - обеспечивает настройку баз данных с помощью обычного интерфейса Access.

Настройка ядра механизма DAO для доступа к данным

Механизм DAO - это интерфейс верхнего уровня для доступа к данным. Непосредственное взаимодействие с данными происходит через соответствующий драйвер ядра БД. Для "настольных" СУБД обычно применяется ядро Microsoft Jet. При его установке в разделе системного реестра Windows (\HKEY_LOCAL_MACHINES\Software\Microsoft\Jet) формируются подразделы Engines и ISAM Formats, где записываются стандартные параметры настройки для этого драйвера низкого уровня.

Рядовому пользователю не дано право изменять эти записи самостоятельно, однако для целей отладки баз данных (особенно в сетевой среде) иногда приходится проводить соответствующую настройку. Это выполняется с помощью метода DBEngine.SetOption.

Поскольку отлаженность работы механизма СУБД очень важна и напрямую зависит от значений этих параметров, их переопределение в системном реестре производится во время сеанса выполнения конкретной программы. После его завершения и закрытия используемого объекта DBEngine восстанавливаются исходные значения. Для ознакомления с доступными параметрами настройки этого механизма следует обратиться к разделу Справки Access "Параметры инициализации ядра Microsoft Jet".

Настройка с помощью профиля пользователя

Следующий способ, позволяющий переопределять стандартные параметры настройки среды Access, реализуется с применением индивидуального профиля пользователя при запуске конкретной программы. Благодаря ему удается успешно предотвращать конфликты, возникающие в связи с различиями между потребностями рабочей программы и стандартными (или произвольно измененными) настройками Access и ядра СУБД.

Для настройки профиля пользователя необходимо задать параметр /profile в командной строке. С точки зрения разработчика, профиль - это особый набор разделов в системном реестре Windows, где содержатся все необходимые параметры настройки.

Прежде всего для настройки профиля в разделе \HKEY_LOCAL_MACHINE\SOFTWARE\ создаются три вложенных раздела: \Организация\Приложение\Номер_Версии_Приложения. Названия выбираются таким образом, чтобы гарантировать их уникальность в рамках ОС. В разделе \Номер_Версии_Приложения создаются подразделы, эквивалентные имеющимся в \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Access. В них записывают параметры, значения которых предполагается переопределить для обеспечения необходимой рабочей среды для создаваемой программы. В разделе \HKEY_ ... \9.0\Access формируется также подраздел под названием \Profiles, где указывается строковый параметр с тем именем, которое будет использоваться в командной строке для запуска этой Access-программы.

Аналогичным образом с применением профиля пользователя можно переопределить параметры для ядра Microsoft Jet. Теперь при выполнении рабочей программы Access их выбор производится путем просмотра следующих подразделов системного реестра \HKEY_LOCAL_MACHINE\SOFTWARE (указаны в порядке убывания приоритета): 1) \Организация\Приложение\Номер_Версии_Приложения; 2) \Microsoft\Office\9.0\Access; 3) \Microsoft\Jet\4.0\Engines. В результате будет выбрано первое значение, найденное по этим адресам.

Значения параметров настройки для тестового файла Access
obj.Nameobj.Value
NameC:\TEMP\Test.mdb
Connect
TransactionsИстина
UpdatableИстина
CollatingOrder1049
QueryTimeout60
Version3.0
RecordsAffected0
ReplicaID
DesignMasterID
Connection
AccessVersion07.53
Build3519
Show Values Limit1000
Show Values in Indexed1
Show Values in Non- Indexed1
Show Values in Remote0
AllowBypassKeyИстина
StartUpShowDBWindowИстина
StartUpShowStatusBarИстина
AllowShortcutMenusИстина
AllowFullMenusИстина
AllowBuiltInToolbarsИстина
AllowToolbarChangesИстина
AllowBreakIntoCodeИстина
AllowSpecialKeysИстина
StartupFormФорма1
StartUpMenuBar(по умолчанию)
AppTitleТест
AppIconC:\TEMP\Test.BMP
 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100