Ich versuche festzustellen, ob ein Prozess noch am Leben ist (im Moment habe ich überprüft, ich weiß, dass es direkt nach der Überprüfung geschlossen werden kann) WaitForSingleObject()
mit einem Handle von Process.MainWindowHandle
aufrufen das funktioniert gut mit IsIconic()
aber es zurückgeben WAIT_FAILED
und GetLastError()
ein ERROR_INVALID_HANDLE
WaitForSingleObject Rückgabe ERROR_INVALID_HANDLE
UInt32 r = WaitForSingleObject(handle, 0);
if(r == WAIT_OBJECT_0)
{
MessageBox.Show("still running!");
}
if(r == WAIT_FAILED)
{
throw new Win32Exception(Marshal.GetLastWin32Error());
}
Mögliches Duplikat von [Calling WaitForSingleObject aus C#] (http://StackOverflow.com/questions/33718217/calling-waitforsingleobject-from-c-sharp) – MethodMan
Sie können nicht auf einen Fenstergriff warten. Überprüfen Sie die Dokumente unter https://msdn.microsoft.com/en-us/library/windows/desktop/ms687032.aspx für die Arten von Handles, auf die gewartet werden kann. – dxiv
Das System sagt, dass Ihr Handle nicht gültig ist. Ihr Handle ist nicht gültig. –