के साथ रिमोट कंप्यूटर पर प्रक्रिया को कैसे मारें मैं दूरस्थ कंप्यूटर पर एक प्रक्रिया को मारने की कोशिश कर रहा हूं, लेकिन यह काम नहीं कर रहा है, और मुझे कोई त्रुटि नहीं मिल रही है। मैं इस कोड का उपयोग कर रहा:wmi
ManagementScope scope = new ManagementScope("\\\\" + txtMaquina.Text + "\\root\\cimv2");
scope.Connect();
ObjectQuery query = new ObjectQuery("select * from Win32_process where name = '" + lstProcessos.SelectedItem.ToString() + "'");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection objectCollection = searcher.Get();
foreach (ManagementObject managementObject in objectCollection)
managementObject.InvokeMethod("Terminate", null);
कंप्यूटर का नाम txtMaquina.Text
है और इस प्रक्रिया का नाम मैं एक ListView
किसी पर एक चयनित आइटम से हो रही है किसी भी विचार क्या गलत यहाँ है है?
के संभावित डुप्लिकेट (http://stackoverflow.com/questions/18993363/unable- [दूर से एक प्रक्रिया WMI और सी # का उपयोग कर को समाप्त करने में असमर्थ] टू-रिमोटली-टर्मिनेट-ए-प्रोसेस-यूज-वाईएमआई-एंड-सी-तेज) – BugFinder
'lstProcessos.SelectedItem.ToString() 'शायद गलत है .. शायद यह टाइप नाम लौटा रहा है .. (उर्फ' ListViewItem')। स्पष्ट रूप से वह नहीं है जो आप चाहते हैं .. ListViews काफी जटिल नियंत्रण हो सकते हैं (यानी, यदि यह एक सूची बॉक्स नियंत्रण था, तो चयनित इटैम के पास शायद 'टेक्स्ट' प्रॉपर्टी होगी ..) –
यदि आप नियंत्रण को बाध्य कर रहे हैं , मूल्य आम तौर पर डेटा इटैम संपत्ति में होता है; जिसे आप ऑब्जेक्ट से स्ट्रिंग में स्पष्ट रूप से डालेंगे ..... बस एक डीबग पॉइंट डालें और 'lstProcessos.SelectedItem' इंस्टेंस में देखें (स्थानीय/वॉच विंडोज़ का उपयोग करना .. या कोड स्निपेट पर ही होवर करना .. या उपयोग करना immeidate कंसोल .. –