किसी विशिष्ट एप्लिकेशन द्वारा कौन सी फाइलें खोली जाती हैं?


21

क्या उन सभी फ़ाइलों को सूचीबद्ध करने का एक तरीका है जो वर्तमान में विंडोज में एक विशिष्ट प्रक्रिया द्वारा खोले गए हैं?

मेरा मतलब है कि फ़ाइलें जो एक है fopen, लेकिन fcloseएक विशिष्ट प्रक्रिया द्वारा कभी नहीं मिला है।

मैंने Sysinternals Process Monitor का उपयोग करने की कोशिश की, लेकिन मैं यह पता नहीं लगा सका कि वर्तमान में खोली गई फ़ाइलों को कैसे सूचीबद्ध किया जाए - लेकिन केवल जब उद्घाटन होता है।


(इस सवाल के लिए प्रासंगिक जवाब के साथ) संबंधित प्रश्न: stackoverflow.com/questions/15708/lsof-equivalent-for-windows
— एंडरसन ग्रीन

जवाबों:


17

आप प्रोसेस मॉनीटर के बजाय Sysinternals Process Explorer ट्राई कर सकते हैं । प्रक्रिया मॉनिटर यह देखने के लिए डिज़ाइन है कि वे तब क्या प्रक्रियाएँ करते हैं। प्रक्रियाओं की वर्तमान स्थिति को देखने के लिए प्रोसेस एक्सप्लोरर अधिक है; यह टास्क मैनेजर है लेकिन लगभग 10x कार्यक्षमता के साथ।

Sysinternals भी है handle.exeजो एक कमांड लाइन उपकरण है जो आपको बताता है कि कौन सी फाइलें खुली हैं।


29

Sysinternals से प्रोसेस एक्सप्लोरर देखें ।

किसी प्रक्रिया के लिए खुली फ़ाइलों को देखने के लिए, सूची से एक प्रक्रिया का चयन करें, दृश्य-> निचला पैनल दृश्य-> हैंडल मेनू विकल्प चुनें। "फाइल" प्रकार के सभी हैंडल खुली हुई फाइलें हैं।

साथ ही, यह पता लगाने का एक शानदार तरीका है कि किस एप्लिकेशन में एक फ़ाइल खुली है, ढूंढें-> हैंडल या DLL मेनू विकल्प का उपयोग करके। बस उस फ़ाइल का नाम दर्ज करें जिसे आप खोज रहे हैं और खोज स्ट्रिंग से मेल खाते फ़ाइल ओपन के साथ प्रक्रियाओं को खोजने के लिए "खोज" को हिट करें।


4
Sysinternals से किसी भी चीज के लिए +1 ... btw, एक सीधा लिंक: live.sysinternals.com/procexp.exe
— fretje

+1 उपकरण के उपयोग के साथ उसकी समस्या को हल करने के लिए। IMO यह सही उत्तर होना चाहिए। जब आप पहले से ही उपयोग कर रहे हैं और प्रक्रिया एक्सप्लोरर के साथ परिचित हैं, तो handle.exe का उपयोग करने की कोई आवश्यकता नहीं है।
— बोल्डएव्लॉव

5

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


@eavyd जवाब पढ़ें, यह बेकार नहीं है। दूसरा भाग अभी भी एक वैध समाधान है।
— बोल्डएव्स लोव

-2

जैसा कि डेव ने ठीक कहा, SysInternals से प्रोसेस एक्सप्लोरर का उपयोग करें, इसके अलावा वे अलग-अलग बर्तनों के सेट की पेशकश करते हैं। चेकआउट: http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.