"Dosya paylaşım kilidi sayısı aşıldı..." hatası
Belirtiler
Bir veya daha fazla kullanıcı çok kullanıcılı bir ortamda çok sayıda işlem işlediğinde, işlemler aşağıdaki hata iletisiyle başarısız olabilir:
Dosya paylaşım kilidi sayısı aşıldı. MaxLocksPerFile kayıt defteri girişini artırın.
Neden
İşlem gerçekleştirmek için gereken kilit sayısı dosya başına kilit sayısı üst sınırını aşarsa hata oluşur.
Geçici Çözüm
Önemli Bu bölüm, yöntem veya görev, kayıt defterini nasıl değiştireceğinizin anlatıldığı adımları içermektedir. Ancak kayıt defterini hatalı biçimde değiştirirseniz önemli sorunlar oluşabilir. Bu nedenle bu adımları dikkatle uyguladığınızdan emin olun. Ek koruma için kayıt defterini değiştirmeden önce yedeklemeyi unutmayın. Böylece, bir sorun oluşursa kayıt defterini daha sonra geri yükleyebilirsiniz. Kayıt defterini yedekleme ve geri yükleme hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
322756 Windows'da kayıt defterini yedekleme ve geri yükleme
Bu sorunu geçici olarak çözmek için dosya başına kilit sayısı üst sınırını artırın. Bunu yapmak için aşağıdaki yöntemlerden birini kullanın.
Yöntem 1: Dosya başına kilit sayısı üst sınırını artırmak için kayıt defteri anahtarını MaxLocksPerFile olarak ayarlayın
Başlat'a ve ardından Çalıştır'a tıklayın.
yazın
regedit
ve Tamam'a tıklayın.Access yüklemenize bağlı olarak aşağıdaki kayıt defteri anahtarını bulun:
Windows Installer (MSI) yüklemesi
Windows'un 32 bit sürümünde çalışan Access'in 32 bit sürümü veya 64 bit Windows sürümünde çalışan Access'in 64 bit sürümü için
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\<x.0>\Access Connectivity Engine\Engines\ACE
Windows'un 64 bit sürümünde çalışan Access'in 32 bit sürümü için
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\<x.0>\Access Connectivity Engine\Engines\ACE
Tıkla-Çalıştır yüklemesi
Windows'un 32 bit sürümünde çalışan Access'in 32 bit sürümü veya 64 bit Windows sürümünde çalışan Access'in 64 bit sürümü için
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\<x.0>\Access Connectivity Engine\Engines\ACE
Windows'un 64 bit sürümünde çalışan Access'in 32 bit sürümü için
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\<x.0>\Access Connectivity Engine\Engines\ACE
Not
<x.0> yer tutucusu, Office sürümünüzü temsil eder (16.0 = Office 2016, Office 2019, Office LTSC 2021 veya Microsoft 365, 15.0 = Office 2013).
Kayıt Defteri Düzenleyici sağ bölmesinde MaxLocksPerFile öğesine çift tıklayın.
DWORD Değerini Düzenle iletişim kutusunda Ondalık'ı seçin.
Değer veri kutusunun değerini gerektiği gibi değiştirin ve tamam'ı seçin.
Bu yöntemin, Microsoft Jet veritabanı altyapısı sürüm 4.0 kullanan tüm uygulamalar için kayıt defteri ayarını değiştirdiğini unutmayın.
Yöntem 2: MaxLocksPerFile dosyasını geçici olarak değiştirmek için SetOption yöntemini kullanın
Not
Bu makaledeki örnek kodda Microsoft Veri Erişim Nesneleri kullanılmaktadır. Bu kodun doğru çalışması için Microsoft DAO 3.6 Nesne Kitaplığı'na başvurmanız gerekir. Bunu yapmak için, Visual Basic Düzenleyici Araçlar menüsünde Başvurular'a tıklayın ve Microsoft DAO 3.6 Nesne Kitaplığı onay kutusunun seçili olduğundan emin olun.
SetOption yöntemi, dosya başına varsayılan kilit sayısını geçici olarak geçersiz kılar. MaxLocksPerFile kayıt defteri anahtarını ayarlarken dosya başına varsayılan kilit sayısını ayarlarsınız. SetOption yöntemini kullanarak yeni değeri ayarlarsınız. Yeni değer, DBEngine nesnesini kapatana kadar geçerlidir. Yöntem 2'yi kullanmak için şu adımları izleyin:
Microsoft Access'i açın.
Veritabanını açın ve ardından Alt+F11 tuşlarına basarak Visual Basic düzenleyicisini başlatın.
Microsoft Visual Basic -<Veritabanı Adı-[<Modül Adı>> (Kod)] penceresinde Görünümmenüsünden Hemen Pencere'yi seçin.
Anlık Pencere'ye aşağıdaki kodu girin:
DAO.DBEngine.SetOption dbmaxlocksperfile,15000
Kod satırını çalıştırmak için ENTER tuşuna basın. Bu komut, MaxLocksPerFile değerini geçici olarak 15.000 olarak ayarlar.
Büyük işlemleri işlemek için MaxLocksPerFile değerini gereksiniminizi karşılayacak şekilde ayarlayın ve ardından işlemleri oturumda çalıştırın.
SetOption yöntemini kullanarak MaxLocksPerFile ayarında yaptığınız değişiklikler yalnızca geçerli oturum için kullanılabilir.
Daha fazla bilgi
MaxLocksPerFile ayarı, Microsoft Jet'in bir dosyaya yerleştireceği kilit sayısı üst sınırını belirler. Varsayılan MaxLocksPerFile değeri 9.500'dür. Ancak, bir Novell NetWare sunucusunda çalışıyorsanız, bağlantı başına en fazla sunucu kaydı kilit sayısı 10.000 olduğundan bu değeri değiştirmeyin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin