फ़ोल्डर के लिए विंडोज 7 प्रसंग मेनू - * यदि * फ़ोल्डर में कुछ फिल्टिप्स होते हैं


3

मैं फ़ोल्डर्स के लिए संदर्भ मेनू में एक प्रविष्टि जोड़ना चाहता हूं, लेकिन केवल यह संदर्भ मेनू में दिखाई देता है। यदि प्रश्न में फ़ोल्डर में एक निश्चित प्रकार की फाइलें होती हैं (इस मामले में, केवल अगर फ़ोल्डर में .avi फाइलें होती हैं)। क्या यह संभव है?

मुझे यकीन है कि मैंने कम से कम एक कार्यक्रम देखा है, जिसमें केवल कुछ प्रसंगों में इसकी संदर्भ मेनू प्रविष्टि दिखाई गई थी - हालांकि मैं अपने जीवन के लिए याद नहीं कर सकता कि यह क्या था।

जवाबों:


9

मुझे पता है कि यह एक पुराना धागा है, लेकिन चूंकि इस विषय के लिए Google पर बहुत कुछ नहीं था .... मैं कुछ और जोड़ना चाहता था ... ज्यादातर यह सिर्फ harrymc का उल्लेख करने पर काम कर रहा है, लेकिन शायद यह उन लोगों की मदद करेगा रजिस्ट्री संपादन के साथ कम आरामदायक ...

सबसे पहले, ऊपर वर्णित सिस्टम ऑब्जेक्ट से वास्तव में टन एपीआई तरीके उपलब्ध हैं । उदाहरण के लिए, ItemName के बजाय आप System.FileName (जो मेरे लिए बेहतर काम करते हैं) या System.ItemFolderPathDisplay की जांच कर सकते हैं ...

दूसरा, खोज सिंटैक्स कुछ हद तक शामिल है, लेकिन वास्तव में आपको बहुत सारे विकल्प देता है। आप AppliesTo परीक्षण में मानक DOS वाइल्डकार्ड का उपयोग कर सकते हैं (उदाहरण के लिए? " आप नाम के विरुद्ध कई प्रकार के ऑपरेटरों का उपयोग कर सकते हैं ... जैसे कि बराबर, समान, समाहित नहीं करता है, के साथ शुरू होता है, के साथ समाप्त होता है, आदि। आप "और" या "या" कीवर्ड के साथ कई शर्तों को एक साथ स्ट्रिंग कर सकते हैं (या उपयोग करें "नहीं" ") .. ऐसा लगता है कि आप कुछ SQL-ish प्रकार की खोज सिंटैक्स भी कर सकते हैं, लेकिन मैं रजिस्ट्री के माध्यम से मूल रूप से काम करने में सक्षम नहीं हूं (मुझे सिंटैक्स गलत हो सकता है ... निश्चित नहीं) ।

3) जबकि मुझे पूछे गए सवाल का हल नहीं मिला है, निम्न रजिस्ट्री स्क्रिप्ट से पता चलता है कि आप फ़ोल्डर के नाम और स्थान के आधार पर संदर्भ मेनू आइटम कैसे दिखा सकते हैं या छिपा सकते हैं। मेरे पास बस यह है कि एक कमांड प्रॉम्प्ट को पॉपपिन करें लेकिन आप आसानी से और कुछ भी बदल सकते हैं।

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\# Ends With '_mydata']
"AppliesTo"="System.FileName:\"*_mydata\""

[HKEY_CLASSES_ROOT\Folder\shell\# Ends With '_mydata'\command]
@="C:\\Windows\\System32\\cmd.exe /k cd /d \"%1\""

[HKEY_CLASSES_ROOT\Folder\shell\# Starts with 'C:-slash-[Videos]']
"AppliesTo"="System.ItemFolderPathDisplay:~< \"C:\\[VIDEOS]\""

[HKEY_CLASSES_ROOT\Folder\shell\# Starts with 'C:-slash-[Videos]'\command]
@="C:\\Windows\\System32\\cmd.exe /k cd /d \"%1\""

[HKEY_CLASSES_ROOT\Folder\shell\# Starts with 'C:-slash-[Videos]' AND ends with '_mydata']
"AppliesTo"="System.FileName:\"*_mydata\" AND System.ItemFolderPathDisplay:~<\"C:\\\""

[HKEY_CLASSES_ROOT\Folder\shell\# Starts with 'C:-slash-[Videos]' AND ends with '_mydata'\command]
@="C:\\Windows\\System32\\cmd.exe /k cd /d \"%1\""

यह भयानक है, मुझे अपने देव सर्वर के लिए एक ब्राउज़र में अपनी स्थानीय सर्वर फ़ाइलों को खोलने के लिए एक संदर्भ मेनू जोड़ना पसंद है, यह मुझे केवल मेनू को दिखाने की अनुमति देता है यदि फाइलें मेरी सभी फ़ाइलों को जोड़ने के बजाय मेरे सर्वर फ़ोल्डर के नीचे रहती हैं, धन्यवाद साझा करने के लिए
जेसनडेविस

यह: "AppliesTo" = "System.FileName: \" _mydata \ "और System.ItemFolderPathDisplay: ~ <\" C: \\\ "" पढ़ना चाहिए: "AppliesTo =" System.FileName: \ " _mydata \" और " System.ItemFolderPathDisplay: ~ <\ "C: \\ [VIDEOS] \"
लुका गिबेली

4

एक संदर्भ-मेनू हैंडलर लिखना निश्चित रूप से संभव है, जिसकी प्रविष्टि केवल मेनू में दिखाई देगी यदि कुछ फाइलें निर्देशिका में मौजूद हैं। एक संदर्भ-मेनू हैंडलर एक ऐसा कार्यक्रम है जो यह तय करने के लिए स्वतंत्र है कि क्या दिखाना है या नहीं, हालांकि यह फ़ोल्डर्स के लिए संदर्भ-मेनू की उपस्थिति को धीमा कर सकता है।

ऐसा होने के लिए विंडोज में केवल सामान्य तंत्र विंडोज सर्च एडवांस्ड क्वेरी सिंटैक्स है। विंडोज 7 में नई सुविधाओं में से एक स्थिर संदर्भ मेनू आइटम के लिए "AppliesTo" मूल्य के अतिरिक्त है। इससे AQS क्वेरी के परिणाम के आधार पर एक स्थिर आइटम को दिखाया या छिपाया जा सकता है ।

इस उदाहरण में , DefaultAppliesTo मान इस क्रिया को उसके फ़ाइल नाम में "exampleText1" शब्द के साथ किसी भी फ़ाइल के लिए डिफ़ॉल्ट बनाता है। AppliesTo मान किसी भी फ़ाइल के लिए क्रिया को "exampleText1" नाम से सक्षम करता है। HasLUAShield मान नाम में "exampleText2" के साथ फ़ाइलों के लिए ढाल प्रदर्शित करता है।

HKEY_CLASSES_ROOT
   txtile
      shell
         test.verb
            DefaultAppliesTo = System.ItemName:"exampleText1"
            HasLUAShield = System.ItemName:"exampleText2"
            AppliesTo = System.ItemName:"exampleText1"

चूंकि AQs अच्छी तरह से प्रलेखित नहीं है, इसलिए मैं किसी फ़ोल्डर की सामग्री को क्वेरी करने के लिए सिंटैक्स को खोजने में सक्षम नहीं हूं।


0

Filemenu Tools आपको ऐसा करने देंगे, कम से कम इसके भीतर यह स्वयं का संदर्भ मेनू है।


दुर्भाग्य से, यह वह नहीं है जो मैं देख रहा हूं। यह मुझे एक निश्चित प्रकार की फ़ाइलों के लिए संदर्भ मेनू में चीजें जोड़ने देता है, अर्थात जब मैं राइट क्लिक करता हूं, तो मैं एक प्रविष्टि दिखा सकता हूं .AVI फाइलें - हालांकि यह काफी नहीं है, हालांकि मैं इसके बाद हूं। जो मैं करने में सक्षम होना चाहता हूं , वह .avi फ़ाइल वाले फ़ोल्डर पर राइट क्लिक करें , और उस पर प्रविष्टि है - और केवल उन फ़ोल्डरों के लिए वहां प्रविष्टि है जिनके पास .avi फाइलें हैं।
दाल हुंडल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.