Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

BDE32 приложения в ptp-сети

Delphi , Базы данных , BDE

BDE32 приложения в ptp-сети

Автор: Scott Frolich

Использование BDE32-приложений в Peer-To-Peer сети

Сетью Peer-To-Peer (сеть, где каждая машина действует как клиент и как сервер) может быть одна из следующих сетей, включая другие сетевые платформы, совместимые с ними:

  1. Windows 95
  2. Windows NT
  3. Lantastic
  4. Netware Lite
BDE автоматически обнаруживает таблицы на сетевом диске, но он не может их определить на dedicated сервере или server/client. Dedicated-сервера уведомляют приложение клиента о том, что файл был изменен или заблокирован. Данная функциональность отсутствует в Peer-To-Peer (не-dedicated) сетях. Для ее включения в сетях Peer-To-Peer, установите "LOCAL SHARE" в TRUE в BDE Configuration Utility на странице System. Это должно быть сделано на всех клиентах BDE, которые имеют доступ к таблицам в сетях, указанных выше. В случае файловых серверов Novell данное требование не является необходимым.

Если используемые таблицы - таблицы Paradox, они также должны использовать каталог с сетевым контролем. Данный каталог должен находиться в сети для всех используемых клиентских приложений. Хорошим стилем считается использование отдельного каталога для приложения, сети и таблиц. Поясним примером:

<Каталог общего доступа>
        |  
        |--- <Каталог таблиц>
        |--- <Каталог Exe-файлов>
        |--- <Сетевой каталог>
Существуют две различных среды BDE, которые необходимо принимать во внимание:
  1. Использование только 32-битных приложений BDE.
  2. Использование только 32-битных приложений BDE совместно с 16-битными.
Установка только для 32-битных приложений

32-битное BDE полностью поддерживает соглашение об путях UNC вместе с длинными именами файлов. Рекомендуется использование соглашения UNC для всех сетевых соединений BDE. UNC позволяет обойтись без подключения (mapped) сетевых дисков. Это позволяет иметь доступ к таблицам и сетевым каталогам без необходимости заставлять пользователя подключать сетевые диски. UNC имеет следующий синтаксис:

  \<Имя сервера>\<Имя каталога общего доступа>\<Путь к каталогу>+<Имя файла>
Вот простой пример стандартного псевдонима (alias) BDE с использованием UNC:
Псевдоним: MyUNCAlias  
        Тип: STANDARD  
        Путь: \\FooServer\FooShare\Sharedir\Tables  
        Драйвер по умолчанию: Paradox
Сетевой каталог может быть установлен и таким способом:
Драйвер: Paradox  
        Сетевой каталог: \\FooServer\FooShare\Sharedir\NetDir
Сетевой каталог может быть установлен во время выполнения приложения с помощью session.netfiledir (Delphi) или DbiSetProp (C++ / Delphi)

Если по какой-либо причине UNC не может использоваться в 32-битных приложениях, следуйте за следующими инструкциями для среды с 32-битными и 16-битными приложениями BDE.

Установка для 16-битных и 32-битных приложений BDE

Поскольку 16-битное Windows API не поддерживает UNC, ее не поддерживает и 16-битное BDE. Для того, чтобы позволить приложениям иметь общий доступ к таблицам, все клиенты должны подключить один и тот же каталог на сервере. Если сервер также используется и в качестве клиента, то все другие клиенты должны подключить его корневой каталог диска. Логический диск при этом у клиентов может быть разным. Вот несколько примеров с работающими и неработающими настройками:

Клиент1:   
    Путь: X:\Каталог общего доступа\Таблицы
Клиент2:   
    Путь: X:\Каталог общего доступа\Таблицы
  Работоспособно

Клиент1: (Также машина с таблицами):  
    Путь: X:\Каталог общего доступа\Таблицы
Клиент2:  
    Путь: X:\Каталог общего доступа\Таблицы
  Работоспособно

Клиент1: (Также машина с таблицами):
    Путь: C:\Каталог общего доступа\Таблицы
Клиент2:  
    Путь: X:\Каталог общего доступа\Таблицы
Клиент3:  
    Путь: R:\Каталог общего доступа\Таблицы
  Работоспособно

Клиент1:   
    Путь: X:\Каталог общего доступа\Таблицы
Клиент2:   
    Путь: X:\Таблицы (Где "X:\Таблицы" реально - 
"X:\Каталог общего доступа\Таблицы", но имеющий 
общий доступ в "Каталог общего доступа")
  Неработоспособно. BDE должен иметь возможность
иметь доступ к файлу Network Control (управление 
сетью).
Итог (установки для сетей Peer-To-Peer):

16- и/или 32-битные приложения:

  1. В BDE Configuration Utility установите "LOCAL SHARE" в TRUE.
  2. Не используйте UNC-имена.
  3. Не используйте таблицы с длинными именами файлов.
  4. Убедитесь в том, что все клиенты подключены к одному и тому же каталогу на сервере.
Только 32-битные приложения:
  1. В BDE Configuration Utility установите "LOCAL SHARE" в TRUE.
  2. Для получения доступа к сетевому каталогу и каталогу с таблицами используйте UNC-имена.
При невыполнении описанных выше шагов пользователи могут блокировать таблицы с получением следующей ошибки:
"Directory is controlled by other .NET file."
(Каталог управляется другим .NET-файлом)
"File:  PDOXUSRS.LCK" ("Файл:  PDOXUSRS.LCK")
"Directory: " (Каталог: )
ИЛИ
  
"Multiple .NET files in use."
(Используются несколько .NET-файлов.)
"File:  PDOXUSRS.LCK"
(Файл:  PDOXUSRS.LCK)

Статья BDE32 приложения в ptp-сети раздела Базы данных BDE может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




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



:: Главная :: BDE ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-04-24 22:55:34
2024-04-26 04:26:26/0.0071570873260498/2