पर प्रक्रिया को मारें मैं दूरस्थ मशीन पर एक प्रक्रिया को मारने की कोशिश कर रहा हूं। लेकिन मुझे त्रुटि मिलती है। मैं गलत क्या कर रहा हूं और मैं यह काम कैसे कर सकता हूं?रिमोट मशीन
मेरे कोड:
var iu = new ImpersonateUser();
try
{
iu.Impersonate(Domain, _userName, _pass);
foreach (var process in Process.GetProcessesByName("notepad", "RemoteMachine"))
{
string processPath = pathToExe; //Is set as constant (and is correct)
process.Kill();
Thread.Sleep(3000);
Process.Start(processPath);
}
}
catch (Exception ex)
{
lblStatus.Text = ex.ToString();
}
finally
{
iu.Undo();
}
बस ImpersonateUser स्पष्ट करने के लिए, यह मेरे सही उपयोगकर्ता अधिकार के साथ रिमोट मशीन के लिए लॉग इन करता है। तो समस्या वहाँ नहीं है। जब मैं प्रक्रिया ऑब्जेक्ट को डीबग और जांचता हूं तो मुझे इस मामले में नोटपैड के लिए सही प्रक्रिया आईडी मिलती है। तो कनेक्शन ठीक काम करता है। लेकिन जब मैं इस प्रक्रिया को मारने की कोशिश मैं इस त्रुटि मिलती है:
System.NotSupportedException: Feature is not supported for remote machines. at System.Diagnostics.Process.EnsureState
। यह विधि केवल स्थानीय कंप्यूटर पर चल रही प्रक्रियाओं के लिए उपलब्ध है।] (Http://msdn.microsoft.com/en-us/library/system.diagnostics.process.kill%28v=vs.110%29.aspx) – JoelC
डुप्लिकेट - http://stackoverflow.com/questions/348112/kill-a-process-on-a-remote-machine-in-c-sharp?rq=1 – vapcguy