Windows कर्सर (.cur)
Microsoft मानकविंडोज कर्सर रिसोर्स (CUR) माइक्रोसॉफ्ट विंडोज का मूल माउस पॉइंटर प्रारूप है, जो कंटेनर आर्किटेक्चर में ICO के समान है लेकिन सटीक हॉटस्पॉट कोऑर्डिनेट ऑफ़सेट निर्दिष्ट करता है।
इंस्पेक्ट और मेटाडेटा
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके CUR फ़ाइलों की पहचान करते हैं:
बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके CUR फ़ाइलों की पहचान करते हैं:
HEX हस्ताक्षर (ऑफ़सेट 0):
00 00 02 00ASCII निरूपण: ....
मानकीकरण: Microsoft Windows Resource Specification
तकनीकी विनिर्देश
| कंटेनर आर्किटेक्चर | ICONDIR header with resource type 2 (Cursor) followed by ICONDIRENTRY array and DIB data |
| कंप्रेशन | Uncompressed DIB or PNG compressed streams (Windows Vista+) |
| बाइट एंडियानेस | Little-Endian (Intel x86) |
| कलर स्पेस | Device RGB |
| चैनल और संरचना | 1-bit monochrome mask, 4-bit, 8-bit, or 32-bit BGRA with alpha |
| अधिकतम आयाम | Typically 32 x 32, 48 x 48, or 64 x 64 (supports up to 256 x 256 in modern Windows) |
| पारदर्शिता (Transparency) | XOR/AND binary mask or 8-bit smooth alpha channel |
| स्ट्रीमिंग और प्रोग्रेसिव | Non-streamable desktop icon/cursor directory |
तकनीकी तुलना मैट्रिक्स: CUR बनाम प्रतियोगी
| तकनीकी विशेषता | CUR (वर्तमान) | ICO | PNG | SVG |
|---|---|---|---|---|
| हॉटस्पॉट परिभाषा | एम्बेडेड X/Y पिक्सेल कोऑर्डिनेट्स | कोई नहीं (केंद्र/शीर्ष-बाएं डिफ़ॉल्ट) | CSS में परिभाषित | SVG व्यूबॉक्स में परिभाषित |
| संसाधन प्रकार ID | 0x0002 (कर्सर) | 0x0001 (आइकॉन) | मानक छवि | वेक्टर XML |
| ऑपरेटिंग सिस्टम | मूल विंडोज माउस सबसिस्टम | विंडोज शेल / ब्राउज़र फ़ेविकॉन | यूनिवर्सल वेब और ऐप | यूनिवर्सल वेक्टर |
| स्केलेबिलिटी | निश्चित मल्टी-रिज़ोल्यूशन मिपमैप्स | निश्चित मल्टी-रिज़ोल्यूशन मिपमैप्स | रास्टर निश्चित आकार | अनंत वेक्टर स्केलिंग |
सामान्य करप्शन मोड और हेक्स रिकवरी गाइड
माउस क्लिक कर्सर तीर की नोक से कई पिक्सेल दूर रजिस्टर होता है।
मूल कारण: ICONDIRENTRY तालिका में भ्रष्ट या गायब हॉटस्पॉट X/Y कोऑर्डिनेट्स।
रिकवरी: हॉटस्पॉट कोऑर्डिनेट को दृश्य रूप से पुनर्स्थापित करने के लिए File2File कर्सर कन्वर्टर में कर्सर को फिर से तैयार करें।
सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स
विंडोज ग्राफिक्स डिवाइस इंटरफेस (GDI) में CUR पार्सिंग बग ने ऐतिहासिक रूप से तैयार हेडर आयामों के माध्यम से मनमाने कोड निष्पादन की अनुमति दी है।
ज्ञात अटैक वेक्टर्स
- लिगेसी कर्सर डिकोडर्स में DIB कलर मास्क के आवंटन के दौरान इंटीजर ओवरफ्लो।
- कर्सर ब्लिटिंग के दौरान आउट-ऑफ-बाउंड्स पॉइंटर रीड्स को ट्रिगर करने वाले भ्रष्ट हॉटस्पॉट ऑफ़सेट।
- आधुनिक CUR फ़ाइलों के भीतर एम्बेडेड PNG धाराओं को पार्स करते समय हीप भ्रष्टाचार।
सुरक्षात्मक सर्वोत्तम प्रथाएँ:
ऐतिहासिक मूल और मील के पत्थर
मुख्य लाभ और खूबियाँ
- सटीक पिक्सेल हॉटस्पॉट कोऑर्डिनेट्स (X, Y) को परिभाषित करता है जहां माउस क्लिक स्क्रीन पर भौतिक रूप से रजिस्टर होते हैं।
- मानक और हाई-DPI 4K मॉनिटर पर शार्प डिस्प्ले के लिए मल्टी-रिज़ोल्यूशन कर्सर परिभाषाओं को सक्षम करता है।
- थर्ड-पार्टी पॉइंटर ड्राइवरों के बिना विंडोज में प्रत्यक्ष मूल ऑपरेटिंग सिस्टम समर्थन।
तकनीकी सीमाएँ और कमियाँ
- मोबाइल उपकरणों और गैर-विंडोज ब्राउज़रों पर खराब मूल डिस्प्ले समर्थन के साथ विंडोज-केंद्रित प्रारूप।
- केवल स्टेटिक पॉइंटर; एनिमेटेड कर्सर के लिए मल्टी-फ्रेम .ANI कंटेनर की आवश्यकता होती है।
- लिगेसी 1-बिट XOR मास्क आधुनिक रंग इंटरफेस पर कठोर व्युत्क्रमण कलाकृतियां (inversion artifacts) उत्पन्न करते हैं।
रोचक तकनीकी जानकारी
- ICO फ़ाइल और CUR फ़ाइल के बीच एकमात्र संरचनात्मक अंतर हेडर का बाइट 3 है: आइकॉन के लिए 1, कर्सर के लिए 2।
- ICO फ़ाइल में, प्रत्येक प्रविष्टि के बाइट 4 और 6 रंग प्लेन और प्रति पिक्सेल बिट्स का प्रतिनिधित्व करते हैं; CUR फ़ाइल में, वे सटीक बाइट हॉटस्पॉट X और Y कोऑर्डिनेट्स का प्रतिनिधित्व करते हैं.
- CSS .cur फ़ाइलों की ओर इशारा करने वाले URL का उपयोग करके सीधे कस्टम वेब कर्सर का समर्थन करता है।
अक्सर पूछे جانے वाले तकनीकी प्रश्न
कर्सर हॉटस्पॉट क्या है?
हॉटस्पॉट कर्सर छवि के अंदर सटीक पिक्सेल निर्देशांक (जैसे तीर की बहुत नोक या क्रॉसहेयर का केंद्र) है जहाँ क्लिक इवेंट होते हैं।
क्या मैं किसी छवि (PNG/JPG) को CUR फ़ाइल में बदल सकता हूँ?
हाँ। File2File.app आपको मानक PNG या JPG फ़ाइलों को कस्टम हॉटस्पॉट प्लेसमेंट के साथ Windows .CUR कर्सर फ़ाइलों में बदलने की अनुमति देता है।
मैं अपनी वेबसाइट पर .cur फ़ाइल का उपयोग कैसे कर सकता हूँ?
आप CSS में कस्टम कर्सर लागू कर सकते हैं: cursor: url('my-cursor.cur'), auto;