|
|
|
Path to data
|
|||
|---|---|---|---|
|
#18+
Несколько раз перечитала по поиску все сообщения по моему вопросу. И так и не нашла ответа. Все сделала правильно. Проект в папке opk\myprj\ далее в этой папке opk\myprj\prg opk\myprj\forms opk\myprj\menu и т.п. А база у меня может лежать вообще на сети или в другой папке, но не в папке opk\myprj\data как мне делать привязку к базе, если в файле конфигурации я установила по умолчанию пути относительно директории моего проекта, т.е. default='c:\devstudio\projects\opk\myprg' PATH=forms;class;prg;menu;reports С уважением, Ольга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 08:48 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
я делаю текстовый конфигурационный файл который лежит вместе с exe- шником. в нем прописаны пути к данным, и др служебная информация. далее в головном модуле программы до открытия таблиц читаю этот файл и определяю пути поиска данных SET PATH to "путь к данным в сети" а далее уже открываю таблицы. конфигурационный файл текстовый - при изменении путей открываем блокнотом и меняем пути. при этом разные экземпляры exe могут работать с разными конф. файлами - и как следствие с разными данными. ТАМ КОНЕЧНО ЕСТЬ ЧЕГО ПЕРЕДЕЛАТЬ (см приложенный файл) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 09:18 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
S866я делаю текстовый конфигурационный файл который лежит вместе с exe- шником. в нем прописаны пути к данным, и др служебная информация. далее в головном модуле программы до открытия таблиц читаю этот файл и определяю пути поиска данных SET PATH to "путь к данным в сети" а далее уже открываю таблицы. конфигурационный файл текстовый - при изменении путей открываем блокнотом и меняем пути. при этом разные экземпляры exe могут работать с разными конф. файлами - и как следствие с разными данными. ТАМ КОНЕЧНО ЕСТЬ ЧЕГО ПЕРЕДЕЛАТЬ (см приложенный файл) Я так же сделала. Но в твоем конфигурационном файле идут пути относительно текущей директории. А у меня база вообще может лежит на другом диске и что тогда? Открывать ее в таком виде: open datebase "путь к базе" Но постоянно держать открытую ее не хочется. И как быть с DE. Или с удаленной базой DE вообще не использовать, а все базы или вьюшки подключать вручную? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 09:34 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
Т.к. чувствуется задача файл-сервер, и я использую config.fpw: 1. на этапе проектирования конечно дирректория локальная моя Path = Dbf;Report; и т.д. чтобы разработать проект 2. а когда уже имеет место exe-файл и его передаю user-ам, а каталог DBF кидаю на сервер и в config.fpw у меня такое Path = \\Tec14-pro\EC\Pasports\Dbf естественно доступ пользователей нужно организовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 10:27 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
2 Krushinskaya Olga посмотрите внимательно IDDIRLOCALDATA: C:\SH621\LOCALDATA IDDIRNETDATA: F:\USERS\SH621\DATA IDDIRPROGS: F:\USERS\SH621 IDPROG: ОТГРУЗКА ГОТОВОЙ ПРОДУКЦИИ ПОТРЕБИТЕЛЯМ СЧЕТ ************ IDPATRON: ************** IDPATRONDOLGN: Генеральный ДИРЕКТОР IDGLBUH: *************** IDGLBUHDOLGN: ГЛАВНЫЙ БУХГАЛТЕР IDDIRFORM: F:\USERS\SH621\forms IDORGNAME: ************* IDORGINN: ************** IDORGKPP: ************* IDBUH: ************** IDBUHDOLGN: БУХГАЛТЕР IDPATH: F:\USERS\SPRAV;F:\BANKS где же здесь пути относительно текущей директории? тут как раз грубое задание диска и каталогов. видете там локальные данные на C: а сетевые на F: на счет удаленных путей и вьюшек подсказать немогу т.к. неиспользовал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 13:06 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
Предположим, структура каталогов имеет вид C:\Project\Data C:\Project\Forms C:\Project\Class C:\Project\Prg Если в качестве директории по умолчанию выбрана директория C:\Project, то относительные пути (относительно текущей директории) указываются так: SET PATH TO Data,Forms,Class,Prg или в файле конфигурации (Config.fpw) PATH=Data,Forms,Class,Prg В качестве разделителей между разными путями можно использовать как запятую, так и точку с запятой. Можно комбинировать абсолютные и относительные пути SET PATH TO Data,Forms,C:\Project\Class,Prg Если путь доступа содержит пробелы, то его следует заключать в кавычки. SET PATH TO "C:\Мои документы",Data,Forms,Class,Prg Адрес к сетевому ресурсу предваряется двойным слешом: \\ServerName\SharedFolder Здесь ServerName - это сетевое имя того комьютера, к ресурсу которого пытаемся обратится SharedFolder - это имя той папки, которая была дана в общий доступ на этом сервере SET PATH TO "C:\Мои документы",Forms,Class,Prg,\\ServerName\SharedFolder Если подключение к сетевому ресурсу "зафиксировали" в системе как дополнительный логический диск, например, под буквой Х, то и обращение будет как к диску X:\ SET PATH TO "C:\Мои документы",Forms,Class,Prg,X:\ Относительная адресация файловой системы : точка - переход в корневую директорию (в системе адресации FoxPro не поддерживается) две точки - переход на одну директорию назад (в родительскую директорию) Т.е. адресация вида .\code Будет воспринята как поиск директории code в текущей директории (точка будет проигнорирована) Если же используется адресация ..\code то это означает перейти в родительский каталог относительно текущего каталога, и в этом родительском каталоге искать папку code. Т.е., например, если текущим каталогом является каталог C:\MyProjects\Project1, то адресация вида "..\code" означает поиск папки по адресу C:\MyProjects\code SET PATH ..\code Проверить, какой же реально получиться путь доступа при использовании того или иного пути доступа можно так: ?FullPath("..\code") Функция FullPath() физически не именяет текущую директорию, а только формирует синтаксическую конструкцию пути доступа при этом сам факт физического существования такой директории никакой роли не играет. Поэтому, желательно проверить себя при помощи функции Directory() ?Directory(FullPath("..\code")) Проблема при использовании относительной адресации в том, что надо очень тщательно следить за тем, какой же каталог является текущим в данный момент. Дело в том, что есть ряд команд и функций, которые могут самостоятельно изменить текущий каталог. Кажется, это могут сделать функции типа GetFile() и GetDir(). Определить, какая же директория в данный момент является текущей можно используя команду ?FullPath("") Здесь две пустые кавычки обязательны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2006, 13:52 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
Еще один способ чтения ini файлов: *регистрация апи DECLARE INTEGER GetPrivateProfileString IN Win32API ; String cSection, String cKey, String cDefault, String @cBuffer, ; Integer nBufferSize, String cINIFile konf_path=SYS(5)+SYS(2003)+'\название.ini' IF !FILE(konf_path) *при запуске проекта konf_path='c:\temp\название.ini' IF !FILE(konf_path) MESSAGEBOX('не найден конфигурационный файл',16,'Ошибка') return ENDIF ENDIF cBuffer = SPACE(1024) nBufferLen = GetPrivateProfileString('DataBase','название_параметра','',@cBuffer,1024,konf_path) IF nBufferLen = 0 =MESSAGEBOX('нет параметра',16,'Ошибка') RETURN ENDIF название_параметра = LEFT(cBuffer,nBufferLen) *************** ini файл выглядит так: [database] название_параметра=C:\windows\ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 04:20 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
Cпасибо огромное. теперь все ясно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 08:59 |
|
||
|
Path to data
|
|||
|---|---|---|---|
|
#18+
S8662 Krushinskaya Olga посмотрите внимательно IDDIRLOCALDATA: C:\SH621\LOCALDATA IDDIRNETDATA: F:\USERS\SH621\DATA IDDIRPROGS: F:\USERS\SH621 IDPROG: ОТГРУЗКА ГОТОВОЙ ПРОДУКЦИИ ПОТРЕБИТЕЛЯМ СЧЕТ ************ IDPATRON: ************** IDPATRONDOLGN: Генеральный ДИРЕКТОР IDGLBUH: *************** IDGLBUHDOLGN: ГЛАВНЫЙ БУХГАЛТЕР IDDIRFORM: F:\USERS\SH621\forms IDORGNAME: ************* IDORGINN: ************** IDORGKPP: ************* IDBUH: ************** IDBUHDOLGN: БУХГАЛТЕР IDPATH: F:\USERS\SPRAV;F:\BANKS где же здесь пути относительно текущей директории? тут как раз грубое задание диска и каталогов. видете там локальные данные на C: а сетевые на F: на счет удаленных путей и вьюшек подсказать немогу т.к. неиспользовал Извините, я не туда посмотрела. Да вижу. Хороший пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 09:00 |
|
||
|
|

start [/forum/topic.php?fid=41&gotonew=1&tid=1592510]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 481ms |

| 0 / 0 |
