Nitin Surya Ответов: 1

Превышено количество блокировок общего доступа к файлам. Увеличение записи реестра maxlocksperfile


Привет.. я использую VB.net код и доступ к БД. В моем приложении я делаю некоторые основные изменения уровня структуры таблицы через vb.net код. делая это я получаю ошибку
File sharing lock count exceeded. Increase MaxLocksPerFile registry entry

Версия файла Access DB-2000.
использование vb.net(настольное приложение), vs10, доступ

Что я уже пробовал:

Я прошел через это. этот[^]
но я не могу сделать это действие на всех ПК конечного пользователя. Поэтому, пожалуйста, помогите мне решить эту проблему на уровне кода.

пример кода
sSql = "ALTER TABLE tblTimeRegister ALTER COLUMN STATUS longtext"
            If Common.con1.State <> ConnectionState.Open Then
                Common.con1.Open()
            End If
            Dim cmd As OleDbCommand
            cmd = New OleDbCommand(sSql, Common.con1)            
            cmd.ExecuteNonQuery()

            If Common.con1.State <> ConnectionState.Closed Then
                Common.con1.Close()
            End If

Примечание: это всего лишь одна часть кода... есть так много добавить столбец и изменить столбец

1 Ответов

Рейтинг:
1

OriginalGriff

На первый взгляд - и это все, что может быть, у нас нет доступа к вашему полному коду или к вашей БД - вы открыли так много команд и так далее, что вы превысили количество системных блокировок, возможно, в сочетании с доступом к одному и тому же файлу доступа от слишком большого количества пользователей одновременно.

Чтобы исправить первое, используйте использование блоков вокруг конструкторов команд, чтобы автоматически закрывать и утилизировать их, когда вы закончите.
Чтобы исправить последнее, не используйте Access как многопользовательскую базу данных, она всегда дает проблемы, которые нужно исправить.


Nitin Surya

какой тип ресурсов будет работать для этого?

OriginalGriff

Никто. Почему?