2009-10-13 7 views
7

एसवीएन और गिट जैसे टूल विंडोज एक्सप्लोरर को कैसे संलग्न करते हैं, जैसे कि वे राइट-क्लिक मेनू में विकल्प जोड़ते हैं और साथ ही फ़ाइल संपादित किए जाने के आधार पर टिक/विस्मयादिबोधक चिह्न जोड़ते हैं?विंडोज एक्सप्लोरर ऐड-ऑन

(मैं Git या SVN-विशिष्ट जानकारी के बाद नहीं कर रहा हूँ - मैं सिर्फ उन्हें उदाहरण के रूप में इस्तेमाल)

उत्तर

10

जो आप चाहते हैं उसे शैल एक्सटेंशन कहा जाता है, इन-प्रोसेस COM ऑब्जेक्ट्स हैं जो विंडोज ऑपरेटिंग सिस्टम की क्षमताओं को बढ़ाता है।

alt text http://www.csscript.net/help/Images/ShellExt2.PNG

आप इन लिंक

अलविदा देख सकते हैं।

3

एक्सप्लोरर DLLs शेल एक्सटेंशन के रूप में रजिस्टर करने के लिए अनुमति देता है। एक खोल एक्सटेंशन संदर्भ मेनू आइटम, आइकन ओवरले और कई अन्य सुविधाएं प्रदान कर सकता है। यह कुछ COM इंटरफेस को उजागर करके करता है जो एक्सप्लोरर कॉल करता है उदा। मेनू या आइकन प्रदर्शित करने से पहले। यहां MSDN home page for shell extensibility है - यद्यपि संदर्भ मेनू और आइकन ओवरले के बारे में अजीब बात यह है कि अब वहां नहीं लगता है - आपको Win32 और COM Development के अंतर्गत ऑफ़लाइन एसडीके का प्रयास करना पड़ सकता है। यूजर इंटरफेस | विंडोज उपयोगकर्ता अनुभव | विंडोज शैल | शैल डेवलपर गाइड | शैल में अनुप्रयोगों का एकीकरण।

1

आपके द्वारा इच्छित शैल एक्सटेंशन के आधार पर, वे लागू करने के लिए QUITE जटिल हो सकते हैं। मैं नहीं जानता कि आप क्या खोज रहे हैं, जल्दी से एक अच्छा एक्सटेंशन लिखने के लिए, या नट-किरकिरा में प्रवेश करने और सभी के हाथों को सीखने के लिए। आप कैसे को लेकर चिंतित नहीं हैं, और बस कुछ विचारों को आप लागू करना चाहते हैं, तो शेल एक्सटेंशन लिखने के लिए इस पुस्तकालय की जाँच ...

EZShellExtensions MFC
EZShellExtensions.NET

का एक बहुत हैं विभिन्न प्रकार:
- संदर्भ मेनू
- संपत्ति पेज
- चिह्न हैंडलर
और कई और अधिक ...

उनके पास नेमस्पेस एक्सटेंशन लिखने के लिए एक और लाइब्रेरी भी है (चीजें जो विंडोज एक्सप्लोरर के पेड़ फलक में दिखाई देती हैं)।

+1

आप उस ढांचे के .NET संस्करण से लिंक कर रहे हैं। कभी भी इसका इस्तेमाल न करें! कभी भी, .NET में कभी भी एक खोल एक्सटेंशन लिखें। यहां बताया गया है: http://blogs.msdn.com/oldnewthing/archive/2006/12/18/1317290.aspx – Stefan

+0

दिलचस्प बिंदु। उस बारे में सोचा नहीं था। मुझे लगता है कि हालांकि यह आपके लक्षित दर्शकों के आधार पर वास्तव में एक मुद्दा हो सकता है या नहीं। यदि आप एक अच्छी तरह से नियंत्रित दर्शकों के लिए लिख रहे हैं (उदाहरण के लिए इंट्रानेट साइट्स जस्ट आईई को कैसे लक्षित कर सकती हैं, और अन्य ब्राउज़रों को अनदेखा कर सकती हैं) यह कोई मुद्दा नहीं हो सकता है, लेकिन सार्वजनिक रिलीज के लिए यह ध्यान में रखना एक अच्छा मुद्दा है। एमएफसी संस्करण को शामिल करने के लिए मेरा जवाब अपडेट किया गया। – eidylon

+1

यह आईई बनाम अन्य ब्राउज़रों का मुद्दा नहीं है। समस्या यह है कि प्लगइन का उपयोग करने वाले प्रत्येक ऐप तोड़ सकता है। कल्पना करें कि एक मूल ऐप जो COM प्लगइन का उपयोग करता है, और उनमें से एक COM प्लगइन .NET में लिखा गया है। यदि ऐप प्लगइन को लोड करने से पहले फ़ाइल-ओपन/सेव डायलॉग का उपयोग करता है, तो प्लगइन लोड करने में असफल हो सकता है क्योंकि उस खराब खोल एक्सटेंशन के कारण एक और .NET रनटाइम लोड हो चुका है। असल में, फ़ाइल-ओपन/सेव डायलॉग का उपयोग करने के लिए भी इसकी आवश्यकता नहीं है: यहां तक ​​कि कुछ अक्सर 'सामान्य' शैल फ़ंक्शंस जैसे SHGetFileInfo() का उपयोग करेंगे। और हाँ: मेरे पास ऐसा ऐप है जो टूटता है यदि ऐसे शैल एक्सटेंशन इंस्टॉल किए गए हैं – Stefan

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^