Difference between revisions of "Имена файлов"

From SunFlurry wiki
Jump to: navigation, search
m (1 revision imported)
1>Admin
Line 4: Line 4:
 
Более подробно о разнице между серверными и локальными именами файлов:
 
Более подробно о разнице между серверными и локальными именами файлов:
 
* Если имя файла начинается на '''?:''', '''\\''', '''"?:''' или '''"\\''', доступ к такому файлу будет осуществлен локально. К примеру, <code>FileToString("C:\file.txt")</code>.
 
* Если имя файла начинается на '''?:''', '''\\''', '''"?:''' или '''"\\''', доступ к такому файлу будет осуществлен локально. К примеру, <code>FileToString("C:\file.txt")</code>.
* В ином случае, файл будет адресован на серверной строне. К примеру, <code>FileToString("Temp\file.txt")</code>. Доступ к файлам на серверной стороне начинается с локальной папки, в которой располагается конфигурация (папка, в которой находится файл <code>dbase.ini</code>). Доступ вне этой папки не предоставляется. Папки, которые можно использовать для хранения данных на сервере:
+
* В ином случае, файл будет адресован на серверной строне. К примеру, <code>FileToString("Temp\file.txt")</code>. Сервер предоставляет доступ по запросу клиентов к папкам, которые находятся внутри локальной папки, в которой располагается конфигурация (папка, в которой находится файл <code>dbase.ini</code>). Доступ вне этой папки не предоставляется. Папки, которые можно использовать для хранения данных на сервере:
 
** '''Temp''': папка создается сервером автоматически, в ней можно создавать подпапки и хранить временные и постоянные данные к которым необходимо иметь доступ с любого клиентского рабочего места. Несмотря на название, эта папка не используется для хранения временных файлов операционной системы, ее содержимое не изменяется серверной частью автоматически.
 
** '''Temp''': папка создается сервером автоматически, в ней можно создавать подпапки и хранить временные и постоянные данные к которым необходимо иметь доступ с любого клиентского рабочего места. Несмотря на название, эта папка не используется для хранения временных файлов операционной системы, ее содержимое не изменяется серверной частью автоматически.
** '''Modules''': внутри этой папки располагаются файлы конфигурации. Дополнительные файлы, записанные в эту папку с клиентских машин, будут удалены при обновлении конфигурации, поэтому, доступ имеет смысл осуществлять только для чтения. Доступ к этой папке в режиме ограниченного доступа запрещен.
+
** '''Modules''': внутри этой папки располагаются файлы конфигурации. Дополнительные файлы, записанные в эту папку с клиентских машин, будут удалены при обновлении конфигурации, поэтому, доступ имеет смысл осуществлять только для чтения. Доступ к некоторым файлам этой папки (исходные тексты и пр.) в режиме ограниченного доступа запрещен.
** '''LocalConfig''': внутри этой папки находится основной файл метаданных, производить изменения в этой папке не рекомендуется. Доступ к этой папке в режиме ограниченного доступа запрещен.
+
** '''LocalConfig''': внутри этой папки находится основной файл метаданных, производить изменения в этой папке не рекомендуется. Доступ к большинству файлов этой папки в режиме ограниченного доступа запрещен.
 
** '''UserSettings''': папка хранит установки визуальных форм, личные настройки и прочее для каждого из пользователей системы. Внутри находятся подпапки пользователей. Чтобы получить путь к личной папке текущего пользователя, можно использовать функцию [[GetUserDirectory]]. Программа может создавать подпапки и считывать и записывать данные, которые не должны удаляться между сессиями, для каждого из пользователей.
 
** '''UserSettings''': папка хранит установки визуальных форм, личные настройки и прочее для каждого из пользователей системы. Внутри находятся подпапки пользователей. Чтобы получить путь к личной папке текущего пользователя, можно использовать функцию [[GetUserDirectory]]. Программа может создавать подпапки и считывать и записывать данные, которые не должны удаляться между сессиями, для каждого из пользователей.
 
** Иные папки специального назначения можно задать в [[Студия/Установки проекта|установках проекта]] на закладке "Компиляция и сервер". Папки, которые не пересчилены в этой установке и неизвестны серверу, будут удалены при обновлении конфигурации.
 
** Иные папки специального назначения можно задать в [[Студия/Установки проекта|установках проекта]] на закладке "Компиляция и сервер". Папки, которые не пересчилены в этой установке и неизвестны серверу, будут удалены при обновлении конфигурации.

Revision as of 12:26, 14 December 2021

Файлы могут находиться как на локальном диске компьютера, на котором запущен клиент базы данных, в этом случае, к файлу имеет доступ только конкретный пользователь, так и на дисках компьютера, на котором работает серверная часть системы, к таким файлам могут иметь доступ все пользователи системы. Для адресация обоих типов файлов используется разница между абсолютным адресом файла (в этом случае будет выполнен доступ к локальному файлу на клиентской машине) и относительным адресом файла (в этом случае, задается путь к файлам конфигурации на серверной машине). Если клиент не использует сервер (локальный консольный клиент без доступа к БД), все файлы будут адресованы на локальном компьютере.
Для разделителя в именах файла используется знак обратного деления \. Для адресации файлов, находящихся в сети, имя должно начинаться с двух знаков "\" (пример \\Server\Folder1\file.txt), для адресации файла на локальном диске, первым символом адреса должно следовать имя локального диска, затем знак : (пример C:\Folder1\file.txt).

Более подробно о разнице между серверными и локальными именами файлов:

  • Если имя файла начинается на ?:, \\, "?: или "\\, доступ к такому файлу будет осуществлен локально. К примеру, FileToString("C:\file.txt").
  • В ином случае, файл будет адресован на серверной строне. К примеру, FileToString("Temp\file.txt"). Сервер предоставляет доступ по запросу клиентов к папкам, которые находятся внутри локальной папки, в которой располагается конфигурация (папка, в которой находится файл dbase.ini). Доступ вне этой папки не предоставляется. Папки, которые можно использовать для хранения данных на сервере:
    • Temp: папка создается сервером автоматически, в ней можно создавать подпапки и хранить временные и постоянные данные к которым необходимо иметь доступ с любого клиентского рабочего места. Несмотря на название, эта папка не используется для хранения временных файлов операционной системы, ее содержимое не изменяется серверной частью автоматически.
    • Modules: внутри этой папки располагаются файлы конфигурации. Дополнительные файлы, записанные в эту папку с клиентских машин, будут удалены при обновлении конфигурации, поэтому, доступ имеет смысл осуществлять только для чтения. Доступ к некоторым файлам этой папки (исходные тексты и пр.) в режиме ограниченного доступа запрещен.
    • LocalConfig: внутри этой папки находится основной файл метаданных, производить изменения в этой папке не рекомендуется. Доступ к большинству файлов этой папки в режиме ограниченного доступа запрещен.
    • UserSettings: папка хранит установки визуальных форм, личные настройки и прочее для каждого из пользователей системы. Внутри находятся подпапки пользователей. Чтобы получить путь к личной папке текущего пользователя, можно использовать функцию GetUserDirectory. Программа может создавать подпапки и считывать и записывать данные, которые не должны удаляться между сессиями, для каждого из пользователей.
    • Иные папки специального назначения можно задать в установках проекта на закладке "Компиляция и сервер". Папки, которые не пересчилены в этой установке и неизвестны серверу, будут удалены при обновлении конфигурации.