Home TürkçeC# BackgroundTaskBuilder ve “Class not registered” Hatası

BackgroundTaskBuilder ve “Class not registered” Hatası

by Fatih Boy
1 comment

   Ok, Windows 8’de ilk arka plan görevinizi oluşturdunuz ve Visual Studio’da F5 tuşuna basarak bir debug oturumu başlattınız. Uygulamanız normal şekilde çalıştı… ta ki arka plan görevinizin sisteme kaydını yapana kadar…  Ne zaman ki BackgroundTaskBuilder sınıfının Register metodunu çalıştırdınız, aşağıdaki hata size merhaba dedi;

Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))

BackgroundTaskBuilder sınıfının Register metodunu çalıştırıldığında alınan "Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))" hatası

 

   Herşey çok güzel giderken bu hata da nerden çıktı diye düşüneceksinizdir, eminim… Bu hatanın temelinde aslında Windows 8’in basit bir güvenlik önlemi yer almakta; Package.appxmanifest içerisinde belirtmediğiniz bir görev için kayıt işlemi yapmaya çalıştınız…

   Hatırlarsanız arka plan görevlerinde ilk bahsettiğimde manifest dosyası içerisinde tüm görevlerinizi belirtmeniz gerektiğinde bahsetmiştim. Buradaki mantık aslında oldukça basit; kodunuz içerisinde yaptığınız işlemler hakkında temel düzeyde bilgi sunmak. Sunduğunuz bu bilgi uygun bir formatta son kullanıcıya iletilecektir (tabi anlayabilecekleri ifadelerle 🙂 ). Dolayısıyla bu kurguya aykırı hareket edilmediğinin garanti altına alınmasının en kolay yolu tanımı bulunmayan arka plan görev kayıt işlemlerinde yukarıdaki gibi hata fırlatmak.

  Doğal olarak bu hatayı almamak için Package.appxmanifest dosyasına ilgili arka plan görev kaydını tanımlamalısınız. Visual Studio içerisinde Package.appxmanifest dosyasını açtığınızda Declarations segmesine geçerek Avaliable Declarations bölümünden Backround Tasks seçerek Add butonuna basın. Gelen bölüm içerisinde arka plan görevinize ait bilgileri vermeniz yeterli olacaktır;

Package.appxmanifest içerisinde arka plan görev tanımı verilmeli

Şu Yazıları da Sevebilirsiniz

1 comment

Mennan Köse (@mennankose) 31 Ağustos 2012 - 08:08

BackgroundTaskBuilder ve “Class not registered” Hatası http://t.co/qJp9HD2n

Reply

Leave a Comment

* Bu formu kullanarak, verilerinizin bu web sitesi tarafından saklanması ve kullanılmasını kabul ediyorsunuz.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Bu web sitesi deneyiminizi geliştirmek için çerezleri kullanır. Bunu kabul ettiğinizi varsayacağız, ancak isterseniz vazgeçebilirsiniz. Kabul Et Daha Fazla Bilgi