2013-01-09 38 views
7

जब उपयोगकर्ता XPजीत 7 जीतने के लिए उपयोगकर्ता को फ़ाइल या फ़ोल्डर तक पहुंचने का प्रयास करता है तो मुझे पासवर्ड विंडो दिखाने के लिए एक प्रोग्राम लिखना होगा (32 बिट और 64 बिट दोनों के लिए)। लेकिन मुश्किल हिस्सा यह है कि मैं इस कार्य के लिए आईएटी \ ईएटी या इनलाइन हुकिंग का उपयोग नहीं कर सकता क्योंकि इसे इस प्रोजेक्ट के लिए थोड़ी Microsoft समर्थित विधि का उपयोग करना आवश्यक है।एपीआई हुकिंग या फ़िल्टर चालक के बिना इंटरसेप्ट फ़ाइल फ़ोल्डर I O

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

मुझे लगता है कि एक खोल एक्सटेंशन यह काम कर सकता है, लेकिन एमएसडीएन दस्तावेज से पता चलता है कि खोल एक्सटेंशन का उपयोग I/O कॉल को रोकने के लिए नहीं किया जा सकता है।

कृपया सलाह दें, अग्रिम धन्यवाद।

+1

क्या उपयोगकर्ता को डॉस बॉक्स लॉन्च करने से रोकता है और वह जो भी चाहता है उसे कंसोल कमांड का उपयोग करके रोकता है? – selbie

+4

मैं ड्राइवर चालक लिखने में हवा करता हूं, ड्राइवर स्वयं ही यूआई नहीं दिखाएगा। लेकिन यह क्रेडिट एकत्र करने के लिए यूआई लॉन्च करने के लिए उपयोगकर्ता मोड ऐप (एला टास्क ट्रे ऐप) तक संवाद कर सकता है। – selbie

उत्तर

4

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

ऑन-एक्सेस एंटी-वायरस पर काम करते समय मुझे भी इसी तरह की चुनौती थी।

लेकिन जैसे @selbie ने कहा, ड्राइवर कोड स्वयं किसी भी इंटरैक्टिव संकेतों को संभाल नहीं सकता है - इसे प्राप्त करने के लिए इसे उपयोगकर्ता-मोड कोड से संवाद करना होगा। यह स्टैंडअलोन ऐप हो सकता है, या आपका डीएलएल हर प्रक्रिया में स्वतः लोड हो सकता है। मेरे मामले में, यदि उपयोगकर्ता प्रतिक्रिया आवश्यक थी, तो हमारे पास पाइप के माध्यम से चालक और उपयोगकर्ता-मोड ऐप संचारित था - ड्राइवर उपयोगकर्ता-मोड ऐप को संदेश पाइप करेगा (यदि यह सक्रिय था) और फिर प्रतिक्रिया के लिए प्रतीक्षा करें। ऐप ने ड्राइवर को एक त्वरित और पाइप प्रतिक्रिया वापस जारी की।

फ़ाइल I/O hooking का विषय भी in earlier thread here पर चर्चा की गई थी।