क्या कोई ऐसा सॉफ़्टवेयर है, जो रजिस्ट्री की सामग्री को त्वरित लुकअप के लिए अनुक्रमित कर सकता है? [बन्द है]


16

विंडोज रजिस्ट्री में सर्च करना वी ------ ry ------ लो ---- एनजी हो सकता है।

क्या कुछ उपकरण उपलब्ध हैं जो संपूर्ण रजिस्ट्री की सामग्री, या एक ही छत्ते की सामग्री को अनुक्रमित कर सकते हैं, जैसे कि तेज लुकअप उपलब्ध हैं? (पूर्ण पाठ खोज के लिए FTS3 या FTS4 के साथ कुछ SQLite डेटाबेस बनाने के उदाहरण के लिए)

धन्यवाद।

पुनश्च। मैं RegScanner या टूल नहीं चाहता जो हर बार एक नया, रैखिक खोज करता है। मैं एक अनुक्रमणिका चाहता हूं , जिसके साथ एक खोज तात्कालिक हो सकती है। प्रश्न टिप्पणियाँ देखें।



यहाँ एक नज़र है: majorgeeks.com/downloads15.html
bubu

2
@ बेनोइट: यह मुझे बहुत परेशान करता है, मैं आज इस तरह का एप्लिकेशन लिखने की कोशिश करने जा रहा हूं।
तमारा विज्समैन

1
@TomWij: क्या यह कमर्शियल होगा? खुला स्त्रोत? क्या मैं इसे बीटा-परीक्षण कर सकता हूं :-)? यह एक महान परियोजना है, और मैं इसे वापस करता हूं।
बेनोइट

1
@TomWij: मुझे यकीन नहीं है कि आप "ठीक काम करता है" से क्या मतलब है, लेकिन ध्यान दें कि आपने वास्तव में कुंजी खोली है ControlSet001(या शायद ControlSet002या कोई अन्य), नहीं CurrentControlSetCurrentControlSetवास्तव में उन कुंजियों का लिंक है, और नियमित .NET फ़ंक्शन का उपयोग करके लिंक को स्वयं देखना संभव नहीं है ; आपको NtOpenKeyलक्ष्य के बजाय वास्तविक प्रतीकात्मक लिंक को खोलने के लिए फ़ंक्शन की आवश्यकता है। यहाँ और यहाँ एक नज़र रखना ।
user541686

जवाबों:


11

परिचय

मैंने एक आवेदन लिखा है जो रजिस्ट्री को अनुक्रमित करता है और एक अन्य अनुप्रयोग जो इस सूचकांक को खोजता है।

जब आप टाइप करते हैं तो इसका परिणाम तुरंत होता है , इससे आप कई चीजों को जल्दी से खोज सकते हैं।

इस वीडियो प्रदर्शन को देखें , दिखाता है कि परिणाम कितने त्वरित हैं, तीन अलग-अलग खोज और दो रजिस्ट्री कूदते हैं।

अनुक्रमणिका

यहाँ छवि विवरण दर्ज करें

अनुक्रमण प्रयोजनों के लिए, मैं Lucene.net का उपयोग कर रहा हूं , क्या वह ध्वनि परिचित नहीं है ?

यह मुझे डेटा को स्टोर करने के लिए SQL डेटाबेस का उपयोग किए बिना, रजिस्ट्री से सीधे डेटा को इंडेक्स करने की अनुमति देता है। इसके अलावा, Lucene.net में बहुत सारे इंडेक्सिंग विकल्प और खोज से संबंधित विशेषताएं हैं जो काम में आती हैं!

इस इंडेक्स को स्टोर किया जाएगा %LOCALAPPDATA%\RegistryIndexऔर इसका आकार लगभग 160 एमबी है।

आवेदन 1: RegistrationIndex.exe

यह ऊपर उल्लेख किया सूचकांक फ़ोल्डर में पूरे रजिस्ट्री, डंप हो जाएगा
कृपया ध्यान दें कि HKEY_CLASSES_ROOTऔर HKEY_CURRENT_USERशॉर्टकट पित्ती हैं और इस प्रकार इंडेक्स नहीं है।

यद्यपि यह आपके बिना काम करता है, आप इसे व्यवस्थापक के रूप में स्वचालित रूप से चलाने के लिए कॉन्फ़िगर करना चाहते हैं ।

एक बार आवेदन से पता चलता है कि यह किया जाता है, तो आप विंडो को बंद कर सकते हैं और इस प्रकार सूचकांक बनाया गया है।

आवेदन 2: रजिस्ट्रीखोज। exe

यह एक सरल है, ऊपर दिए गए पाठ बॉक्स में खोजने के लिए कुछ टाइप करें और परिणाम में प्रवाह होगा।

गलत सिंटैक्स टाइप करने के परिणामस्वरूप पीले टेक्स्ट बॉक्स और नीचे की स्थिति बार में त्रुटि होगी।

वाइल्डकार्ड और बूलियन ऑपरेशन जैसी विशेष खोज सुविधाओं का समर्थन किया जाता है, अधिक जानकारी के लिए क्वेरी सिंटैक्स देखें। कृपया ध्यान दें कि निर्दिष्ट फ़ील्ड वर्तमान सेटिंग में काम नहीं करेगी, सिस्टम टोकन पथ और मूल्य के एक संयोजन में खोज करता है। तो A \ B \ C मान के साथ DEF ABCDE F बन जाता है।

सटीक मार्ग खोजने का उदाहरण: "HKEY_LOCAL_MACHINE SOFTWARE"

खोज 1000 परिणामों तक सीमित है।

रजिस्ट्री में इसे कूदने के लिए एक प्रविष्टि पर डबल क्लिक करें, यह SysInternals से regjump.exe का उपयोग करता है ।
आपको काम करने के लिए जंप के लिए व्यवस्थापक के रूप में खोज कार्यक्रम चलाना होगा , पहली बार EULA को स्वीकार करना होगा।

भविष्य की विशेषताएं

वर्तमान संस्करण को तकनीकी पूर्वावलोकन के रूप में देखें, यह काम करता है, लेकिन रीफैक्टरिंग और मेकअप का उपयोग कर सकता है।

  • एप्लिकेशन आइकन और संस्करण
  • विन्यास
  • हाइलाइटिंग परिणाम
  • इंस्टॉलर पैकेज
  • मॉनिटर सेवा (हुक का उपयोग करके रजिस्ट्री परिवर्तन ट्रैक करता है और सूचकांक को अपडेट करता है)

परिवर्तन

  • 21/03: अब स्टोर करता है %LOCALAPPDATA%, Administratorsअनुमति मांगता है ।

डाउनलोड

डाउनलोड करने के लिए यहां क्लिक करें , सभी फ़ाइलों को पसंदीदा स्थान पर अनज़िप करें, रजिस्ट्रीइंडेक्स / Search.exe के शॉर्टकट बनाएं।

स्रोत

यह गैर-बाधित है, इसलिए यदि आप चाहें तो IL का निरीक्षण करने के लिए आप Reflector का उपयोग कर सकते हैं।

मैं स्रोत जारी कर सकता हूं जब इसे थोड़ा और अधिक सुविधाओं के साथ फिर से जोड़ा जाता है, शायद मैं इसे कोडप्लेक्स पर रख सकता हूं।


2
बेहतर होगा अगर आपका ऐप% LOCALAPPDATA% का उपयोग करता है न कि% APPDATA% का।
११:४२ पर edusysadmin

1
@edusysadmin: समायोजित, अब% LOCALAPPDATA% पर सहेजता है और व्यवस्थापक अनुमतियाँ पूछता है।
तमारा विजसमैन

1
धन्यवाद। मैंने फ्रेंच भाषा में विन विस्टा का उपयोग करते हुए पैकेज डाउनलोड किया है, और यहां तक ​​कि रजिस्ट्री फेलियर के रूप में चल रहा है। (कहता है "कृपया प्रशासक के रूप में चलाएं")। क्या आपके पास एक विचार है कि यह क्यों विफल हो सकता है?
बेनोइट

@Benoit: मैं व्यवस्थापक भाग के लिए Microsoft साइट से कोड का उपयोग कर रहा हूं, लेकिन यह गैर-अंतर्राष्ट्रीय कोड है। अन्य सभी कोड अंतरराष्ट्रीय स्तर की चीजों को देखते हैं। समस्या यह है कि यह अनुमतियों की तलाश करने के लिए "प्रशासक" समूह को देखता है, क्योंकि यह समूह आपके कंप्यूटर पर अलग-अलग कहा जाता है, इस प्रकार यह विफल हो जाता है। new System.Security.Principal.SecurityIdentifier(WellKnownSidType.BuiltinAdministratorsSid, null).Translate(typeof(System.Security.Principal.NTAccount)).ToString().Split('\\').Last()समूह नाम प्राप्त करने के लिए इसका उपयोग अब हल कर दिया गया है ।
तमारा विज्समैन

1
हैलो, क्या परियोजना अभी भी जीवित है? मैं पिछली बार बहुत रिवर्स इंजीनियरिंग कर रहा हूं और यह बहुत उपयोगी हो सकता है। कोई नया लिंक?
दिमित्री गुसरोव

3

को देखो Nirsoft के RegScanner । अनुक्रमणिका नहीं, लेकिन यह RegEdit को खोजता है और यह अन्य शांत विशेषताओं के बीच आपके लिए RegEdit खोलेगा। विकास परियोजना शुरू करने से पहले निश्चित रूप से कोशिश करें (जब तक कि आप इस परियोजना को करने के लिए नहीं करना चाहते हैं) - आप पा सकते हैं कि आपको वास्तव में अधिक आवश्यकता नहीं है।


जैसा कि पहले से ही एक टिप्पणी में कहा गया है: यह एक अच्छा उपकरण है, लेकिन यह कुछ भी अनुक्रमित नहीं करेगा।
बेनोइट

और जैसा कि मैंने भी कहा। लेकिन आपका सवाल, पहले ही वाक्य में, RegEdit की धीमी गति को संबोधित करता है, इसकी तकनीक नहीं है, और इस तरह, RegScanner संबोधित करता है कि बल्कि अच्छी तरह से। मैं सुझाव देता हूँ कि भविष्य में इसकी मदद के लिए सुझाव को छोड़ दें।
JRobert

बहुत अच्छा उपकरण! +1
पिओटर डोब्रोगोस्ट

1

आप रजिस्ट्री को .reg टेक्स्ट फ़ाइल में निर्यात कर सकते हैं और इसे खोजने के लिए अपने पसंदीदा संपादक का उपयोग कर सकते हैं।


यह वास्तव में एक अच्छा विचार है लेकिन संभवत: सबऑप्टिमल है क्योंकि कोई इंडेक्सेशन नहीं है।
बेनोइट

ध्यान दें, फिर FTS3 या FTS4 सक्षम के साथ SQLite में किसी तरह से सभी reg फ़ाइल डालने शायद यह करने का एक तरीका है।
बेनोइट

@ बेनोइट: वास्तव में, मैंने पहली रजिस्ट्री को पूरी तरह से सादा-पाठ फ़ाइल में दर्ज करने के साथ शुरू किया और नोटपैड ++ के साथ वास्तव में तेजी से खोज कर रहा है। मैं इंडेक्सिंग करने के लिए Lucene.Net का उपयोग कर रहा हूं क्योंकि यह विशेष रूप से उस कार्य के लिए लिखा गया है और मुझे SQL समाधान बनाने की आवश्यकता नहीं है, यह हाइलाइटिंग सुविधाओं का भी समर्थन करता है (यह खोज इंजन, btw के लिए है, एसई Lucene.net का उपयोग करता है यहाँ खोज इंजन के लिए) जिसे मैं शामिल करने की कोशिश करूँगा, शायद बाद के संस्करण पर। मुझे लगता है कि जब आप टाइप करते हैं तो अनुक्रमण / FTS का परिणाम खोज परिणाम होता है , लेकिन इसे अभी तक आज़माया नहीं गया है ...
तमारा विज्समैन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.