लगता है कि आपने बहुत सारे टूल इंस्टॉल किए हैं जो ओवरले आइकन रजिस्टर करते हैं। पुराने 16 बिट कोड के कारण विंडोज में केवल 15 ओवरले आइकन की एक बदसूरत सीमा है जिसे बदला नहीं जा सकता है:
मान 15 छवि सूचियों के लिए इसी सीमा से आया है। ImageList_SetOverlayImage फ़ंक्शन प्रति छवि सूची में 15 छवि सूची ओवरले का समर्थन करता है। (अरे, यह बदतर हुआ करता था। सीमा केवल 3 हुआ करती थी!)
ठीक है, लेकिन केवल 15 क्यों? ज्यादा क्यों नहीं?
ओवरले छवि एक छवि सूची से एक चित्र बनाते समय उपयोग की जाने वाली जानकारी के टुकड़ों में से एक है। विकल्पों को फ़ाइटल पैरामीटर में एन्कोड किया गया है, और जब बिट्स को विभिन्न उद्देश्यों के लिए विभाजित किया गया था, तो ओवरले छवि को निर्दिष्ट करने के लिए चार बिट्स उपलब्ध होने के लिए उपलब्ध थे। (आप 16 के बजाय 15 ओवरले चित्र प्राप्त करते हैं क्योंकि आप "कोई ओवरले" निर्दिष्ट करने के लिए किसी एक मान को खो देते हैं)।
ठीक है, लेकिन fStyle पैरामीटर में मान केवल निचले 16 बिट्स का उपयोग करते हैं। ऊपरी 16 बिट्स के बारे में क्या? वहां काफी जगह है।
16-बिट सीमा को कॉमन कंट्रोल के 16-बिट संस्करण (जिसे अभी भी विंडोज 95 में समर्थित होने की आवश्यकता थी) से ऊपर ले जाया गया था। बेशक, आजकल, कोई भी सामान्य नियंत्रण के 16-बिट संस्करण के बारे में परवाह नहीं करता है, तो ऊपरी बिट्स का उपयोग क्यों नहीं शुरू करें?
एक असंतोषजनक विवरण है: आंतरिक रूप से कोड जो fStyle का प्रबंधन करता है, वह अभी भी कुछ स्थानों पर एक WORD का उपयोग करता है, इसलिए सभी कोड जो fStyle का प्रबंधन करता है, उसे संशोधित करना होगा। यह विंडोज भर में कई मॉड्यूल में होता है, इसलिए एक सिंक्रनाइज़ेशन परिवर्तन कई घटकों में किया जाना चाहिए। यह बाइनरी स्तर पर एक ब्रेकिंग परिवर्तन है क्योंकि इंटरफेस अब संगत नहीं हैं। परिवर्तनों को समन्वयित करना प्रक्रियात्मक रूप से कठिन है: प्रभावित कोड शेल टीम को दिखाई नहीं दे सकता है क्योंकि वे दूर-दूर की पत्ती की शाखा में बैठे हैं जो अभी तक ट्रंक के लिए RI'd नहीं है। यह हो सकता है कि WORD से DWORD तक fStyle का विस्तार कुछ घटक के लिए दूरगामी परिणाम हो।
यदि हाँ, तो या तो यहां दिखाए गए एप्लिकेशन को अनइंस्टॉल करें या फिर से कॉन्फ़िगर करें या रजिस्ट्री प्रविष्टियों को मैन्युअल रूप से हटा दें (उन्हें पाठ्यक्रम से हटाकर)।