Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как запустить приложение VFP дважды на компе... / 13 сообщений из 13, страница 1 из 1
14.02.2005, 18:12
    #32915000
Oleg1113
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Стоит OPEN DATABASE ... SHARED, но несмотря на это при попытке
второй копии VFP отрыть базу (для этой копии DBUSED() = .F.) сообщение
что доступ запрещен - write protection.
Что может быть?
...
Рейтинг: 0 / 0
14.02.2005, 18:40
    #32915070
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
На какой именно команде выскакивает ошибка? Это ошибка FoxPro или Windows?
...
Рейтинг: 0 / 0
15.02.2005, 07:27
    #32915448
piva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Дык - поди грабли от Set TableValidate
...
Рейтинг: 0 / 0
15.02.2005, 09:21
    #32915574
Oleg1113
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
ВладимирМНа какой именно команде выскакивает ошибка? Это ошибка FoxPro или Windows?
На OPEN DATABASE ... SHARED - ошибку выдаёт FOX - номер 1705, вроде.
База нормальная, уже открыта в одной копии, и посети доступна - shared.
Надо вот только запусить дважды на компе...
...
Рейтинг: 0 / 0
15.02.2005, 09:49
    #32915631
Andrey Ts
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Может, в вашей программе используются разные DataSession и программа сама пытается дважды открыть БД?

Или 2-й вариант - если есть свой обработчик ошибок, м.б. у него прописано что-то, вызывающее эту ошибку - открытие БД, например?
...
Рейтинг: 0 / 0
15.02.2005, 10:59
    #32915836
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Есть такой "фокус". Если открыто окно проекта (PJX), то закрыть базу данных программно невозможно!

Это значит, что команда OPEN DATABASE не откроет базу данных, а будет просто проигнорирована, поскольку эта база данных уже открыта.

Поэтому, прежде чем экспериментировать с совместным доступом убедись, что база данных действительно была закрыта. При открытом проекте это можно сделать только из окна собственно проекта по кнопке Close на закладке "Data", когда указатель стоит на имени базы данных.

Проверить, в каком же режиме ты открыл базу данных можно так:

?IsExclusive("MyBase",2)
...
Рейтинг: 0 / 0
15.02.2005, 12:05
    #32916045
Oleg1113
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
ВладимирМЕсть такой "фокус". Если открыто окно проекта (PJX), то закрыть базу данных программно невозможно!

Это значит, что команда OPEN DATABASE не откроет базу данных, а будет просто проигнорирована, поскольку эта база данных уже открыта.

Действителльно, она уже открыта, поэтому и выдается ошибка ( 1705 ) write protection, даже если это открытие с SHARED! (при запуске второй копии app )


Видимо вообще нельзя открыть БД дважды. Можно только попробовать открывать другую сессию данных, как намекалось в одном из ответов, спасибо.
...
Рейтинг: 0 / 0
15.02.2005, 12:09
    #32916066
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Видимо вообще нельзя открыть БД дважды.
странно я открывал ??
...
Рейтинг: 0 / 0
15.02.2005, 12:13
    #32916082
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Это посылается из среды VFP или сделан exe-файл и там срабатывает ошибка.
...
Рейтинг: 0 / 0
15.02.2005, 12:16
    #32916095
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
з.ы.
а Вы думаете что в другой копии фокспро та же сессия если да то это как
опишите что делаете конкретно
...
Рейтинг: 0 / 0
15.02.2005, 13:01
    #32916241
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
*--------- start.prg
SET TALK OFF
SET ...
SET EXCLUSIVE OFF

CLEAR

CLOSE DATABASES ALL
CLEAR ALL

OPEN DATABASE ........ SHARED

DO FORM ......... && SHOW WINDOW AS TOP LEVEL FORM

READ EVENTS

SET TALK ON
*---------end start.prg

*--------------В Config.fpw
Codepage = 1251
Path = ..... Путь к базе
Screen = OFF
*---------------

И все хорошо работает.
...
Рейтинг: 0 / 0
15.02.2005, 13:04
    #32916246
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Oleg1113Видимо вообще нельзя открыть БД дважды. Можно только попробовать открывать другую сессию данных, как намекалось в одном из ответов, спасибо.
Нет. Не так.

Открыть БД дважды можно. НО! Оба раза она должны быть открыта как SHARED. У Вас же происходит следующее:

-) Открываете среду FoxPro
-) Автоматически открывается проект (PJX)
-) Видимо проект открыт на закладке Data, как следствие, автоматически открывается БД

Опять же, вероятно Вы не меняли настройку по умолчанию SET EXCLUSIVE (Tools - Options - Data - Open exclusive) и поэтому БД открывается в режиме EXCLUSIVE

Теперь Вам надо

-) выделить в окне проекта имя БД. Это приведет к активации кнопки "Close".
-) Нажмите ее и БД будет закрыта.
-) Убедитесь, что больше нет открытых БД (не раскрывается ComboBox в ToolBar со списком БД).
-) В командном окне дайте команду

OPEN DATABASE MyBase SHARED

-) Убедитесь, что Ваша БД открылась в режиме SHARED

?IsExclusive("MyBase",2) - должна вернуть .F.

Теперь открывайте вторую копию FoxPro и экспериментируйте.
...
Рейтинг: 0 / 0
15.02.2005, 18:39
    #32917115
Oleg1113
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как запустить приложение VFP дважды на компе...
Открыть БД дважды можно. НО! Оба раза она должны быть открыта как SHARED. У Вас же происходит следующее:

-) Открываете среду FoxPro
-) Автоматически открывается проект (PJX)
-) Видимо проект открыт на закладке Data, как следствие, автоматически открывается БД

Опять же, вероятно Вы не меняли настройку по умолчанию SET EXCLUSIVE (Tools - Options - Data - Open exclusive) и поэтому БД открывается в режиме EXCLUSIVE


Да, спасибо Вам!
Действительно по умолчанию было ON
и поэтому не открывалась вторая копия...
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как запустить приложение VFP дважды на компе... / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]