Kaplama simgelerini kaydeden çok fazla araç yüklediğiniz anlaşılıyor. Windows, değiştirilemeyen eski 16 Bit kodu nedeniyle , yalnızca 15 bindirme simgesinin çirkin bir sınırına sahiptir :
15 değeri, resim listeleri için ilgili limitten geldi. ImageList_SetOverlayImage işlevi, resim listesi başına 15 resim listesi kaplamaya kadar destekler. (Hey, daha kötüydü. Sınır sadece 3 idi!)
Tamam, ama neden sadece 15? Neden daha fazla değil?
Bindirme görüntüsü, bir görüntü listesinden bir görüntü çizerken kullanılan bilgi parçalarından biridir. Seçenekler fStyle parametresinde kodlanmıştır ve bitler çeşitli amaçlar için bölündüğünde, bindirme görüntüsünü belirtmek için dört bit kullanılabilirdi. (16) yerine 15 bindirme görüntüsü alırsınız, çünkü “bindirme yok” belirtmek için değerlerden birini kaybedersiniz.)
Tamam, ancak fStyle parametresindeki değerler sadece alt 16 bit kullanır. Üst 16 bit ne olacak? Orada bir sürü oda var.
16 bitlik sınır, genel denetimlerin 16 bitlik sürümünden (yine de Windows 95'te desteklenmesi gerekiyordu) taşındı. Tabii ki, bugünlerde, ortak kontrollerin 16-bit versiyonunu kimse umursamıyor, öyleyse neden üst bitleri kullanmaya başlamıyorsun?
Tatmin edici olmayan bir açıklama var: fStyle'ı yöneten dahili olarak hala bazı yerlerde WORD kullanıyor, bu nedenle fStyle'ı yöneten tüm kodların revize edilmesi gerekecek. Bu, Windows'taki çoklu modüllerde meydana gelir, bu nedenle birden fazla bileşende senkronize bir değişiklik yapılması gerekir. Arayüzler artık uyumlu olmadığından, bu ikili seviyedeki bir kırılma değişikliğidir. Değişikliklerin kırılması prosedürel olarak koordine etmek zordur: Etkilenen kod kabuk ekibine görünmeyebilir, çünkü henüz bagaja girmemiş, uzak bir yaprak dalında oturuyorlar. FStyle'ı bir WORD'den bir DWORD'a genişletmenin bazı bileşenler için çok geniş kapsamlı sonuçları olabilir.
Bu yüzden Microsoft, Explorer’ı bozmadan düzeltemez.
ve öğelerin sayısını. 15 sınırına mı çıkıyorsun?
Evetse, burada gösterilen uygulamaları kaldırın veya yeniden yapılandırın veya kayıt defteri girdilerini el ile kaldırın (tabii ki yedekleyin).