मैं एक अनजानी प्रक्रिया को कैसे मार सकता हूं?


12

मैंने एक एप्लिकेशन बंद कर दिया, लेकिन प्रक्रिया सूची में बनी रही। मैं कार्य प्रबंधक से रोकने की कोशिश करता हूं, लेकिन कुछ नहीं होता है। कोई त्रुटि संदेश, प्रक्रिया केवल सूची में रहती है। मैं इसे डीबग करने का प्रयास करता हूं, लेकिन डीबगर कहता है:

दुर्घटनाग्रस्त प्रक्रिया में संलग्न करने में असमर्थ। अनुरोधित ऑपरेशन समर्थित नहीं है।

यह VS2008 और कुछ अन्य कार्यक्रमों के साथ होता है, कभी-कभी।

इसे कैसे समाप्त करें?


यही एक कारण है कि मैंने लिनक्स पर स्विच किया। हालाँकि मैंने इस समस्या को Win XP के तहत अनुभव किया है, ऐसा लगता है कि यह तब से अब तक बदल नहीं पाई है।
पीटरसन

4
के अनुसार samba.2283325.n4.nabble.com/... कर्नेल पर इंतजार कर प्रक्रियाओं unkillable कर रहे हैं - वहाँ वास्तव में लिनक्स में एक ही स्थिति। यह एक कारण है जिसकी वजह से मैंने विंडोज को स्विच किया है।
ta.speot.is

मार्क रोसिनोविच का लेख "अनकबिल प्रोसेस" कहता है कि आप स्थानीय-कर्नेल-डिबगिंग टूल का उपयोग यह पता लगाने के लिए कर सकते हैं कि कोई प्रक्रिया अनजानी क्यों है। लेख आपको क्या करने के निर्देश देता है। आपको विंडोज के लिए फ्रीवेयर डीबगिंग टूल्स की आवश्यकता होगी ।
अविस्मरणीय

जवाबों:


11

दुर्भाग्य से, एकमात्र वास्तविक पुनरावृत्ति करना है।

मेरे पास भी यह समस्या है, और मैं दुर्घटनाग्रस्त प्रक्रिया को सफलतापूर्वक मारने का कोई रास्ता नहीं ढूंढ सका। मैंने हर पीस्किल / समान ऐप के बारे में कोशिश की, जो मुझे मिल सकते थे, और वे सभी विफल।

जैसा कि मैं इसे समझता हूं, इस समस्या का सबसे आम कारण यह है जब अपमानजनक प्रक्रिया एक सिस्टम ड्राइवर को लोड करती है, और फिर इसे एक अनुरोध भेजती है जो इसे पूरा करने में विफल रहती है। जाहिरा तौर पर कर्नेल ठीक से मेमोरी को प्रक्रिया से नहीं हटा सकता है जब यह बंद हो जाता है क्योंकि दुर्घटनाग्रस्त ड्राइवर एक IO प्रतीक्षा स्थिति में होता है जिसे प्रक्रिया पता स्थान तक पहुंच की आवश्यकता होती है।

(अधिकांशतः से घबराए हुए) http://blogs.technet.com/markrussinovich/archive/2005/08/17/unkillable-processes.aspx


2
हाँ, यह निश्चित रूप से इस तरह की चीज का सबसे आम कारण है। मेरे द्वारा देखी गई अधिकांश अचूक प्रक्रियाएं या तो सीडी-ड्राइव (जैसे EAC.EXE) या टीवी ट्यूनर / वीडियो कार्ड (जैसे ATIMMC.EXE) से संबंधित थीं । दोनों ही मामलों में, यह एक ड्राइवर की गलती के लिए नीचे आता है, और जो कोई भी सीखा और किया गया ड्राइवर काम करता है उसे पता होगा कि समस्याग्रस्त चीजें उस स्तर पर कैसे प्राप्त कर सकती हैं, और उपयोगकर्ता के लिए किस तरह के "अजीब" प्रभाव हो सकते हैं (बीएसओडी कम से कम हैं) निश्चित और स्पष्ट)।
सिनेटेक

1
@ सिनेटेक इंक। - मेरे पास सभी समस्याएं डिस्क से संबंधित थीं, या सॉफ्टवेयर में जो वास्तव में ड्राइवर की कोई आवश्यकता नहीं थी (मुझे कोई पता नहीं है कि क्यों उन्हें कर्नेल में चलाने के लिए आवश्यक निर्णय लिया गया था)। मुझे नहीं लगता कि आप इस बारे में कोई कंबल बयान कर सकते हैं कि किस तरह के सॉफ़्टवेयर में सबसे अधिक बार गैर-हत्या करने योग्य क्रैश होते हैं।
नकली नाम

3

प्रोसेस हैकर के पास एक विविध → टर्मिनेटर कमांड है जो आपकी प्रक्रिया को मारने के लिए विभिन्न तरीकों का एक गुच्छा आज़माएगा:

अधिकांश प्रयासों में असफल रहा

पूरा विवरण

मेरे परीक्षणों में, इस सभी ने प्रोसेस हैकर को लॉक कर दिया था और इसे एक अनजानी प्रक्रिया में भी बदल दिया था, लेकिन शायद यह कुछ मामलों में काम करेगा।


2
टर्मिनेटर को प्रोसेस हैकर से हटाकर एक प्लगइन में स्थानांतरित कर दिया गया है। इसके बारे में एक मंच सूत्र था । अनुरक्षक ने दावा किया: "टर्मिनेटर बेकार है ... क्योंकि यह सामान्य टर्मिनेट कार्यक्षमता से अधिक प्रभावी नहीं है।" कुछ लोगों ने जवाब दिया और असहमत थे।
अविस्मरणीयसुपोर्ट्समोनिका

बाद में, dmex ने एक प्लगइन में टर्मिनेटर को स्थानांतरित कर दिया। स्रोत कोड है यहाँ । इस लेखन के रूप में, अभी तक कोई बाइनरी नहीं है । जब बाइनरी जारी किया जाता है, तो इसे dmex रिलीज़ पृष्ठ पर प्रकाशित किया जाएगा ।
अविस्मरणीयसुपोर्ट्समोनिका

1
मैंने टर्मिनेटर के संकलित संस्करण का अनुरोध करते हुए अभी एक फीचर अनुरोध दायर किया है । अभी के लिए, मुझे लगता है कि आप 2.39 से अधिक पुराने प्रोसेस हैकर के किसी भी संस्करण का उपयोग कर सकते हैं। उदाहरण के लिए, आप संस्करण 2.38 का उपयोग कर सकते हैं, जो यहां उपलब्ध है
अविस्मरणीयडुपोर्ट्समोनिका

एक विकल्प यह भी है कि एक डिबगर जुड़ा हुआ था और न मारने का कारण यह है। विविध का पता लगाता है और टुकड़ी डिबगर जोड़ता है
घिता

2

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

मैंने इस अवसर पर ऐसा देखा है, खासकर उन कार्यक्रमों के साथ जिनमें पॉप-अप संवाद होता है या ऐसा कुछ होता है जो किसी तरह छिप जाता है; संवाद को खारिज करने का एक तरीका खोजना थ्रेड को समाप्त करने की अनुमति देता है, इस प्रकार प्रक्रिया को समाप्त करने की अनुमति देता है।

मुझे संदेह है कि वृद्धि के साथ, बहु-थ्रेडेड प्रोग्रामिंग के अभी भी अपेक्षाकृत नए अभ्यास, इस तरह की चीजें कम से कम कुछ समय के लिए अधिक सामान्य हो जाएंगी।


0

यह संभावना है कि आपके द्वारा उपयोग किए जा रहे प्रोग्राम विंडोज विस्टा / 7 से पहले विकसित किए गए थे और किए गए परिवर्तनों के साथ असंगत हैं।

आपका सबसे अच्छा शर्त उन कार्यक्रमों के लिए निष्पादन योग्य का पता लगाना है जिनके पास यह समस्या है, राइट क्लिक करें, संपत्तियों पर जाएं, फिर संगतता का चयन करें, अंत में संगतता मोड के रूप में विंडोज एक्सपी का चयन करें।


0

CMD को व्यवस्थापक के रूप में लॉन्च करें, और इसे बंद करने के लिए टास्किल का उपयोग करें। उदाहरण:

टास्ककिल / एफ yourprogram.exe

या

taskkill / F / im yourprogram.exe

यदि आप CMD टास्ककिल सिंटैक्स पर अटक जाते हैं, तो टास्ककिल / टाइप करें?


1
सुपर उपयोगकर्ता में आपका स्वागत है! हालाँकि यह समस्या को हल करने में मदद कर सकता है, लेकिन यह इस बात को स्पष्ट नहीं करता है कि क्यों और / या यह कैसे पता करता है। इस अतिरिक्त संदर्भ को प्रदान करने से इसके दीर्घकालिक शैक्षिक मूल्य में काफी सुधार होगा। कृपया अपने उत्तर को स्पष्टीकरण जोड़ने के लिए संपादित करें, जिसमें पैरामीटर क्या करते हैं और क्या सीमाएं और धारणाएं लागू होती हैं। धन्यवाद।
फिक्सर 1234

त्रुटि: PID 16872 के साथ "AutoHotkeyU64_UIA.exe" प्रक्रिया को समाप्त नहीं किया जा सका। कारण: कार्य का कोई चल उदाहरण नहीं है।
शयन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.