Определить, в каком режиме запущена программа (в локальном или в Сетевом) можно следующим способом:

- Открыть файл

ПапкаПрограммыClientShop\Data2\server.txt

Если там написано "$embedded$" - значит, программа настроена на запуск в Локальном режиме. Если там написано "localhost", имя компьютера или любой другой текст (кроме "$embedded$") - значит, программа запущена в Сетевом режиме.



Начиная с версии 3.61 можно проще определить, в каком режиме запущена программа - для этого нужно зайти в раздел

"Специальные возможности", в заголовке окна будет отображена информация о том, в каком режиме запущена программа:

"Программа запущена в Локальном режиме"

или

"Программа запущена в Сетевом режиме"



Если программа используется для работы на одном компьютере - ее можно запускать как в Локальном, так и в Сетевом режиме - разницы особой нет.

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



Если Вы планируете использовать программу на нескольких компьютерах в локальной сети - но программа на главном компьютере у Вас работает в Локальном режиме - сначала (перед установкой программы на другие компьютеры) нужно настроить программу на главном компьютере для работы в Сетевом режиме.

Как перевести программу из Локального в Сетевой режим:

1) Установить сервер Firebird:

Запустите дистрибутив (если в Windows Vista/7/8 - лучше запускать от имени Администратора); если в процессе установки будет задан вопрос "Firebird уже установлен - переустановить Firebird" - выбрать утвердительный ответ.

Дистрибутив установки сервера Firebird: Utils/ClientShop_Firebird_2_5_install_3_78c.exe


2) Прописать нужную информацию в файле

ПапкаПрограммыClientShop\Data2\server.txt

- вместо

"$embedded$"

прописать

"localhost"

(без кавычек)


3) По умолчанию в программе Client Shop используется библиотека gds32.dll (ПапкаПрограммыClientShop\gds32.dll) для работы в Локальном режиме.

Нужно подменить файл

ПапкаПрограммыClientShop\gds32.dll на следующий:

Utils/gds/network/gds32.dll

Перед подменой файла, разумеется, закрыть программу (иначе подменить не получится).

Внимание: убедитесь, что после замены размер файла

ПапкаПрограммыClientShop\gds32.dll

в районе 536 килобайт. Если размер данного файла в районе 536 килобайт - значит, это DLL для работы программы в Сетевом режиме и все сделано правильно - с использованием данной DLL программа будет корректно работать в Сетевом режиме. Если размер несколько мегабайт - значит, это DLL для работы в Локальном режиме.

В случае если у Вас будет использоваться библиотека gds32.dll для Локального режима, но программу Вы будете использовать в Сетевом режиме - в этом случае Вы не сможете запустить программу одновременно на обоих компьютерах. Программа будет попеременно запускаться на разных компьютерах, но не сможет запускаться одновременно на нескольких компьютерах в локальной сети.

В случае если Вам потребуется перевести программу обратно в Локальный режим - кроме всего прочего, нужно будет обратно подменить gds.dll (в папке программы) на DLL для Локального режима. Если Вы перед переводом программы в Сетевой режиме не сделали резервную копию заменяемой DLL - скачать DLL для Локального режима Вы можете здесь:

Utils/gds/embedded/gds32.dll



4) Проверить, что программа нормально запускается в Сетевом режиме


Если все сделали по инструкции - но программа при запуске выдает ошибку

invalid request BLR at offset70function DATEDAYS is not definedmodule name or entrypoint...

- возможно, на Вашем компьютере уже был установлен Firebird сервер, но только не тот, который нужен для программы Client Shop. Следовательно, установка сервера для программы Client Shop (установщик автоматически ставит специальную версию сервера Firebird с нужными UDF-библиотеками) на шаге 1 произошла неудачно (даже если установщик сообщил о том, что на компьютере уже была установлена другая версия Firebird и Вы согласились ее удалить перед установкой данной версии - удаление по разным причинам могло не получиться).

Чтобы исправить данную проблему, можно сделать следующее:

- Идем в Панель управления-->Программы и компоненты (или Панель управления-->Программы-->Удаление программы); как вариант, "Установка и удаление программ" - для старых версий Windows.

- Удаляем Firebird/Interbase сервер - если он уже установлен. Если установлено несколько - удаляем их все.

Заново устанавливаем дистрибутив Firebird для Client Shop: Utils/ClientShop_Firebird_2_5_install_3_78c.exe

!!!ВНИМАНИЕ!!! Установленные версии Interbase/Firebird, возможно, установлены не просто так - а используются какими-либо программами (как правило, программы, связанные с ведением различных баз данных) и используют модифицированный дистрибутив Interbase/Firebird со своими UDF - в этом случае эти программы могут перестать работать.

В некоторых случаях сторонние программы используют более старые версии Firebird - например, Firebird 2.0 (без своих UDF), а вместе с программой Client Shop идет Firebird 2.5. Client Shop не может работать на базе Firebird 2.0, т. к. в нем нет тех возможностей, которые есть в версии 2.5. В этом случае при удалении старой версии Firebird 2.0 и при установке новой, идущей с программой Client Shop, эти сторонние программы, как правило, продолжают нормально работать - если не используют дополнительные UDF-библиотеки (поскольку Firebird 2.5 - более новая версия, чем 2.0 - программы, разработанные под версию 2.0, как правило, нормально работают и на версии 2.5).

Посмотреть, каким образом установлен сервер Firebird - обычным способом или с дополнительно идующими UDF-библиотеками, можно следующим образом:

- Находим папку, куда установлен сервер Firebird - как правило, это папка "C:\Program Files\Firebird\Firebird_2_0" или "C:\Program Files (x86)\Firebird\Firebird_2_0" или "C:\Program Files)\Firebird\Firebird_2_5" и т. д.

Заходим в папку UDF, смотрим, какие DLL-файлы там присутсвуют.

ib_udf.dll, fbudf.dll - это стандартные библиотеки, идущие вместе с Firebird; MyLibrary.dll - UDF, идущая вместе с программой Client Shop - если установлены только они - значит, скорее всего, сторонние программы не используют какие-либо свои UDF и сервер Firebird можно удалить. Если присутствуют еще какие-либо DLL-файлы в данной папке - возможно, это UDF-файлы, используемые какой-либо сторонней программой. Соответственноо, удаление текущего сервера Firebird и последующая установка его версией Firebird, идущей вместе с Client Shop, может привести к тому, что эти программы перестанут работать (или будут работать, но в некоторых случаях выдавать ошибки - как правило, при обращении к этим UDF).