powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Многопользовательская dbf и Windows 7
19 сообщений из 19, страница 1 из 1
Многопользовательская dbf и Windows 7
    #40067464
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дано: Dbf таблица, обитающая в сети Novel , к которой одновременно подключается много пользователей. Парк ПК на части которой установлена OS Windows XP, а на другой Windows 7 . Пользователи с утра запускают программы написанные на VFP 9 в которых четко указано: "Use <имя таблицы> in 0 shared again".
Ситуация: Если к таблице первым подключился пользователь на ПК работающим под Windows XP , остальные пользователи, не зависимо от ОС, отработают день без проблем, а вот если "первым стартовал" счастливый обладатель ПК с Windows 7 , независимо в административном режиме или пользовательском, никакие другие пользователи открыть её уже не смогут, не зависимо от версий ОС. Системные администраторы, обслуживающие Novel, говорят:" У нас все в штатном режиме." А бригада прикладников каждое утро по 30-40 минут "разруливают узеров" .
Машин в организации под Windows 7 все больше и больше, прикладники стараются перегружать dbf-ки на SQL-сервер и переписывать программы, но прикладников мало, а коллекция dbf и программ на VFP ,в нашей организации, огромна, нужно как-то укрощать windows 7. Научить приложение распознавать ОС просто подал функцию OS() и нет проблем, а дольше что? На одном из форумов дочиталась, что проблема блокировки в системе кэширования Windows 6 поколения. Лично пробовала отрегулировать размер кэша функцией SYS(3050) - не получилось.
Уважаемые Гуру, ПОМОГИТЕ! До пенсии ёще 10 лет! VFP меня кормит и поит! :(
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067468
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa
Пользователи с утра запускают программы написанные на VFP 9 в которых четко указано: "Use <имя таблицы> in 0 shared again".

Не верю!

Для начала провести тест:
Закинуть в новелл какую-нибудь DBF.
Собрать простейшее приложение
Код: sql
1.
2.
3.
set excl off
Use <имя таблицы> in 0 shared again
MessageBox("Готово")


Запустить сначала на win7 затем на xp.

Если будет ошибка, то сюда показать ее текст. Текст ошибки копируется по Ctrl+C
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067476
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa
До пенсии ёще 10 лет!

Хорошо. Как раз успеешь переписать на что-то более вменяемое.

kazakowa
Если к таблице первым подключился пользователь на ПК работающим под Windows XP , остальные пользователи, не зависимо от ОС, отработают день без проблем

Решение очевидно. Надо завести виртуалку с хп, в которой фокс будет подключаться ко всем таблицам.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067479
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa,

Не выключайте на ночь одну машину с ХР
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067482
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не хамите бабушке! В проффесии официально с 1994 года. Не верите смотрите вложение с обоих сторон ПК с ОС Windows 7.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067485
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Siemargl, оставлять на ночь не выйдет, по ночам таблицы пакуются и индексы обновляются.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067492
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa,

Значит подключаться с хп автоматом после того как таблицы допакуются.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067558
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Солидарен с Dima T, странно это все.

Смотреть кто блокирует файл, разбираться почему.

В инете упоминают, что проблемы с блокировками могут быть, например, из-за антивирусов.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067580
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa
Не верите смотрите вложение с обоих сторон ПК с ОС Windows 7.

Странно, но даже если все так, то дело все-равно не в фоксе.
Там механика такая: фокс обращается к виндовсу с командой открыть файл в shared режиме. Дальше виндавс открывает этот файл своими средствами. Если бы фокс косячил, то он бы с любого виндавса монопольно файл открывал бы.
Внутренний кэш фокса тоже ни при чем, читая файл сделал копию содержимого, никаких блокировок тут не требуется.
100% косяк где-то в винде. Возможно кривой драйвер сетевухи для 7-ки, может там можно поиграть какими-нибудь настройками. В 7-ке вроде есть настройки для работы в режиме совместимым с XP, там потыкаться и т.д. и т.п.
В любом случае эту проблему должны решать админы.

Несколько вариантов как им это доказать:
1. Разместить БД в виндовой сети на виндовой шаре. Уверен что проблема исчезнет.
2. Сделать небольшую прогу хоть на чем кроме фокса, которая с помощью WinAPI функции CreateFile() откроет файл в расшаренном режиме. Пооткрывать с ее помощью. Думаю глюк повторится.

По крайней мере стабильная демонстрация проблемы это уже много, т.к. теперь есть инструмент с помощью которого можно проверять разные версии.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067587
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa
Научить приложение распознавать ОС просто подал функцию OS() и нет проблем, а дольше что?

А дальше так: при старте в папке с БД создаешь (fcreate()) файлик used.flg. Если не создался - работаем, т.к. кто-то уже вошел, иначе провереям ОС, если Win7 - закрыть файл и сообщение "Работать нельзя. Подождите пока кто-нибудь зайдет с WinXP".

PS Два и более компа с Win7 работают вместе? Если два компа с Win7 работают, а третий с XP не может зайти, то это еще один способ продемонстрировать админу что блокировки нет.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067594
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T
"Работать нельзя. Подождите пока кто-нибудь зайдет с WinXP"

Вот такое решение поддерживаю. Юзер должен понимать, на какой рухляди всё крутится.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067602
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T

Странно, но даже если все так, то дело все-равно не в фоксе...

+1

беглый поиск по инету говорит, что на подобное нарываются:
1) при антивирусах. Идет обращение к файлу, антивирус его паралельно открывает для проверки.
2) и вроде еще есть какие-то опортунистические блокировки, как я понимаю, отключаются
https://docs.microsoft.com/en-US/windows/win32/fileio/opportunistic-locks
https://infusionsoftware.zendesk.com/hc/en-us/articles/115002293593-To-Disable-SMB2-and-OPLOCK-Network-Locking-Errors-

В любом случае, первым делом, нужно искать кто заблокировал файл и в каком режиме. Начиная от средств сервера (novel не знаю) и заканчивая тулзами от System Internals
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067655
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, сервер то Новелл. Блокировки от него.

Версии клиента для ХР и 7 наверняка разные. А в них мутили разные схемы блокировки.

Гуглить Oplocks, может настройками Новелл клиента решится.

Упс, не дочитал последнее сообщение (
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40067712
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще добавлю что средствами фокса можно получить только два варианта:
Код: sql
1.
Use ... shared


Код: sql
1.
Use ... exclusive


Это всё. Тюнинговать нечего, нет промежуточных вариантов.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40068709
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T
kazakowa
Научить приложение распознавать ОС просто подал функцию OS() и нет проблем, а дольше что?

А дальше так: при старте в папке с БД создаешь (fcreate()) файлик used.flg. Если не создался - работаем, т.к. кто-то уже вошел, иначе провереям ОС, если Win7 - закрыть файл и сообщение "Работать нельзя. Подождите пока кто-нибудь зайдет с WinXP".

PS Два и более компа с Win7 работают вместе? Если два компа с Win7 работают, а третий с XP не может зайти, то это еще один способ продемонстрировать админу что блокировки нет.

Всем спасибо, за предлагаемые решения на оперативке озвучу начальнику. Но следует отметить разработчики из Чебоксарского ГНИВЦ как-то проблему решают (самый знаменитый продукт "Налогоплательщик ЮЛ"). Но там спецы не мне маленькому прикладнику чета.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40068730
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kazakowa
Но следует отметить разработчики из Чебоксарского ГНИВЦ как-то проблему решают (самый знаменитый продукт "Налогоплательщик ЮЛ"). Но там спецы не мне маленькому прикладнику чета.

Ну извини что мы в новеле не разбираемся. Лично я ни разу с ним не сталкивался, думаю как и большинство присутствующих. Думал он умер давным-давно.
Ищи форум по новелу и там спроси.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40068841
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kazakowa
Dima T
пропущено...

А дальше так: при старте в папке с БД создаешь (fcreate()) файлик used.flg. Если не создался - работаем, т.к. кто-то уже вошел, иначе провереям ОС, если Win7 - закрыть файл и сообщение "Работать нельзя. Подождите пока кто-нибудь зайдет с WinXP".

PS Два и более компа с Win7 работают вместе? Если два компа с Win7 работают, а третий с XP не может зайти, то это еще один способ продемонстрировать админу что блокировки нет.

Всем спасибо, за предлагаемые решения на оперативке озвучу начальнику. Но следует отметить разработчики из Чебоксарского ГНИВЦ как-то проблему решают (самый знаменитый продукт "Налогоплательщик ЮЛ"). Но там спецы не мне маленькому прикладнику чета.

Подумала еще раз, перед установкой продукта разработанного ГНИВЦ, требуется: запуститься в административном режиме и отключить антивирус, сдаётся мне вовремя установки, операционку и антивирусник как-то укрощают, но исключительно в отношении своего продукта. Нужно проводить эксперимент по отключению SMB2, но это после праздников под присмотром системного администратора.
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40068879
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl
Версии клиента для ХР и 7 наверняка разные. А в них мутили разные схемы блокировки.

+1

Примерно Ваш случай:
VFP 9 app, novell client, windows 7 BSOD

Вы не указали какой у Вас клиент Novell на двух типах машин и используете ли Вы транзакции в Вашем коде.

Предлагается 2 решения:

Resolution
Workaround: This symptom is known to be caused by a bug in the Novell Client for Windows Vista caching code. This can be worked around by disabling file caching (set the "File Caching" parameter on the Advanced tab in the Novell Client properties page to "Off") or by renaming the \Program Files\Novell\Client\XTier\Drivers\nccache.sys module.

или:

I had the same problem with CaseWare and Taxprep applications on a Netware 6.5 SP6 server. The Win7Pro workstation was locking all other users out. My solution was:
1. Uninstall Novell Client
2. Uninstall NMAS
3. Uninstall NICI
4. Re-boot
5. Delete everything in C:\Novell
6. Unzip "Novell Client 2 for Windows Vista-2008", not Client 2 SP1, and run setup. Do custom install and de-select NMAS.
7. Reboot system, log in and you should be good to go.

Так как у Вас не Vista-2008, то просто попробуйте "DESELECT NMAS" при переустановке.

Good luck!

P.S. А почему нельзя просто "поднять" Windows 2019 server, создать FileShare и туда перенсти все файлы данных?
...
Рейтинг: 0 / 0
Многопользовательская dbf и Windows 7
    #40069849
kazakowa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Siemargl
Кстати, сервер то Новелл. Блокировки от него.

Версии клиента для ХР и 7 наверняка разные. А в них мутили разные схемы блокировки.

Гуглить Oplocks, может настройками Новелл клиента решится.

Упс, не дочитал последнее сообщение (

"Вот что крест животворящий делает!" И.В. Грозный
Продемонстрировала начальнику сию переписку. Старший системный администратор "проникся перспективами". Fox не виноват! Зря его били по наглой рыжей морде. Причина в Клиенте Новелл.
Решение: На каждой машине с Windows 7 Открываем "Сервисы Novell " -> "Свойства Novell Client" -> "Дополнительные параметры" устанавливаем свойство "Откл" на "Автовостановление" и "Кеширование файлов" .
Спасибо за внимание! У меня всё! :)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Многопользовательская dbf и Windows 7
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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