मैं प्रक्रिया को मारने के लिए Process.Kill()
का उपयोग करता हूं।"प्रक्रिया समाप्त हो गई है" अपवाद के बिना प्रक्रिया को कैसे मारें?
if(!process.WaitForExit(5000)) {
process.Kill();
}
और कभी कभी प्रक्रिया सही लाइनों के बीच में बंद हो जाएगी, इसलिए नियंत्रण के अंदर if
मिल जाएगा और फिर Kill
एक अपवाद निकलेगा:
System.InvalidOperationException
Cannot process request because the process (ProcessIdHere) has exited.
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.Kill()
//my code here
अब try- में कोड लपेटकर इस तरह पकड़ एक अच्छा विचार प्रतीत नहीं होता है क्योंकि InvalidOperationException
अन्य कारणों से बुलाया जा सकता है।
क्या वर्णित परिदृश्य में अपवाद प्राप्त किए बिना प्रक्रिया को मारने का कोई तरीका है?
क्या आपने आंतरिक अपवाद की जांच करने की कोशिश की है? आपको संभालने के लिए सही अपवाद दे सकता है। – Yahya
@Yahya: हाँ, आंतरिक अपवाद हर समय शून्य है। – sharptooth