Windows 11 ağ yazıcısı bağlanmıyor ve ekranda 0x80070040 ya da 0x80070BCB görünüyor olabilir. Bu sorun özellikle ofislerde, yazıcının bir bilgisayarda paylaştırıldığı ve diğer bilgisayarların bu paylaşıma bağlandığı yapılarda karşımıza çıkıyor. Dosya klasörleri açıldığı halde yazıcının eklenmemesi de oldukça sık rastlanan bir durum.
Bu rehberde, sorunu rastgele ayar değiştirerek değil; önce bağlantıyı ölçerek, ardından sunucudaki sürücüyü tespit ederek ve gerekirse sürücüyü istemci bilgisayara elle kurarak çözeceğiz.
0x80070040 ve 0x80070BCB neden oluşur?
0x80070040 hatası, Windows’un paylaşılan yazıcı yoluna ulaşamadığını veya bağlantıyı yazdırma hizmetiyle tamamlayamadığını anlatır. “Belirtilen ağ adı artık geçersiz” ifadesi her zaman IP adresinin yanlış olduğu anlamına gelmez; yazıcı paylaşım adı, SMB oturumu, RPC iletişimi veya Print Spooler hizmeti de işin içinde olabilir.
0x80070BCB ise çoğunlukla yazıcı sürücüsünün sunucudan alınamamasıyla ilgilidir. Sunucuda eski bir sürücü bulunması, istemcide sürücünün hiç olmaması, Windows’un sürücüyü güvenlik nedeniyle otomatik yüklememesi ya da 32 bit/64 bit uyumsuzluğu bu hatayı tetikleyebilir.
IP adresine erişiliyor ama yazıcı neden eklenmiyor?
Dosya Gezgini’ne \\192.168.2.77 yazdığınızda paylaşımlar açılıyorsa temel SMB erişimi çalışıyor demektir. Ancak paylaşılan yazıcı bağlantısı yalnızca klasör listesi okumaktan ibaret değildir. Windows aynı işlem sırasında yazıcı paylaşımını sorgular, RPC üzerinden yazdırma hizmetine ulaşır, sürücüyü kontrol eder ve istemciye uygun sürücüyü yüklemeye çalışır.
Bu nedenle klasör paylaşımının çalışması, yazıcının da mutlaka bağlanacağı anlamına gelmez. Özellikle eski Canon LBP6030 gibi modellerde sürücüyü istemciye önceden kurmak ve bağlantıyı yerel UNC portu üzerinden tanımlamak daha sağlıklı sonuç verir.
Önce SMB ve RPC bağlantısını ölçün
Yazıcıyı eklemeye çalıştığınız istemci bilgisayarda PowerShell’i yönetici olarak açın ve şu kontrolleri çalıştırın:
Test-NetConnection 192.168.2.77 -Port 445
Test-NetConnection 192.168.2.77 -Port 135
Test-Path "\\192.168.2.77"
Test-Path "\\192.168.2.77\canon_Muhasebe"
445 numaralı port SMB, 135 numaralı port ise RPC iletişimi için önemlidir. İki portta da TcpTestSucceeded : True görmelisiniz. Paylaşım yolu için son iki komutun sonucu da True olmalıdır.
Test başarısızsa önce bilgisayarların aynı ağa bağlı olduğunu, IP adresinin değişmediğini, paylaşım adının doğru yazıldığını ve sunucudaki Print Spooler hizmetinin çalıştığını kontrol edin. SMB1’i açmak veya güvenlik duvarını tamamen kapatmak, bu sorunda standart ve güvenli bir çözüm değildir.
Sunucuda hangi yazıcı sürücüsü kullanılıyor?
Bağlantıyı paylaşan bilgisayarda gerçek yazıcı adını ve sürücü adını öğrenin. Yönetici PowerShell penceresinde:
Get-Printer | Format-Table Name, DriverName, PortName, Shared, ShareName -AutoSize
Get-Printer -Name "*Canon*" | Format-List Name, DriverName, PortName, Shared, ShareName
Burada özellikle DriverName ve ShareName alanlarını not edin. İnternette benzer bir model için görülen sürücü adını tahmin ederek kullanmayın; Add-Printer komutundaki sürücü adı, sistemde gerçekten kayıtlı olan adla aynı olmalıdır.
Canon LBP6030 sürücüsünü INF dosyasıyla kurun
Canon LBP6030 için Windows 11 ile uyumlu sürücüyü Canon’un resmi destek sayfasından indirin. Kurulum dosyası ZIP veya EXE olarak geldiyse içeriğini örneğin C:\Drivers\CanonLBP6030 klasörüne çıkarın. Ardından INF dosyalarının yerini bulun:
Get-ChildItem "C:\Drivers\CanonLBP6030" -Recurse -Filter *.inf
Çıktıda görünen INF dosyasını veya sürücü klasörünü kullanarak sürücü paketini Windows sürücü deposuna ekleyin:
pnputil /add-driver "C:\Drivers\CanonLBP6030\*.inf" /subdirs
pnputil /add-driver "C:\Drivers\CanonLBP6030\*.inf" /subdirs /install
Komut “No driver packages were added” benzeri bir sonuç verirse yanlış klasörü göstermiş olabilirsiniz. Get-ChildItem ile gerçek INF yolunu yeniden bulun. /install parametresi yalnızca mevcut Windows sürümü ve mimariyle uyumlu paketi yükler; her INF dosyasını zorla kurmaz.
Paylaşılan yazıcıya PowerShell ile bağlanın
Sürücü istemciye kurulduktan sonra bağlantıyı doğrudan deneyebilirsiniz:
Add-Printer -ConnectionName "\\192.168.2.77\canon_Muhasebe"
Komut başarılı olursa yazıcı Ayarlar > Bluetooth ve cihazlar > Yazıcılar ve tarayıcılar bölümünde görünür. Burada paylaşım adının sunucudaki ShareName değeriyle birebir aynı olması gerekir.
Otomatik bağlantı yine olmazsa yerel UNC portu oluşturun
Sunucudan sürücü alma adımı başarısız oluyorsa yazıcıyı istemcide yerel bir portla tanımlayabilirsiniz. Önce UNC portunu oluşturun:
Add-PrinterPort -Name "\\192.168.2.77\canon_Muhasebe"
Add-Printer -Name "Canon LBP6030 Muhasebe" -DriverName "Canon LBP6030/6040/6018L" -PortName "\\192.168.2.77\canon_Muhasebe"
İkinci komuttaki DriverName örnektir. Siz mutlaka sunucuda çalıştırdığınız Get-Printer çıktısındaki gerçek adı kullanın. Grafik arayüzünü tercih ederseniz Yazıcı ekle > İstediğim yazıcı listede yok > Yerel yazıcı veya ağ yazıcısını el ile ekle > Yeni bağlantı noktası oluştur > Local Port yolunu izleyin. Port adı olarak \\192.168.2.77\canon_Muhasebe yazın ve biraz önce kurduğunuz Canon sürücüsünü seçin.
Son kontrol listesi
- Sunucunun IP adresi ve yazıcı paylaşım adı doğru mu?
- 445 ve 135 portları erişilebilir mi?
- Sunucuda Print Spooler hizmeti çalışıyor mu?
- İstemcide doğru mimariye uygun Canon sürücüsü kuruldu mu?
DriverNamedeğeri komutta birebir kullanıldı mı?- Yazıcı adı ile paylaşım adı birbirine karıştırıldı mı?
Özetle, Windows 11 ağ yazıcısı bağlanmıyor sorununun nedeni her zaman ağın tamamen kapalı olması değildir. 0x80070040 için SMB/RPC yolunu, 0x80070BCB içinse sürücü aktarımını ayrı ayrı kontrol etmek gerekir. Canon LBP6030 örneğinde olduğu gibi sürücüyü INF dosyasıyla yerel kurup UNC portu kullanmak, otomatik paylaşılmış yazıcı ekleme işleminin takıldığı birçok ortamda işe yarar. Buna rağmen sonuç; kullanılan Windows sürümüne, sürücü paketine ve ağdaki yazdırma politikalarına göre değişebilir.
Kaynaklar: Get-Printer, Add-Printer, Add-PrinterPort, PnPUtil, Canon LBP6030 resmi destek