'Kill process. Try for an orderly shutdown via WM_CLOSE.  If
still running after gracePeriod (5 sec. default), terminate.'

def kill(self, gracePeriod=5000):

    win32gui.EnumWindows(self.__close__, 0)
    if (self.wait(gracePeriod) != win32event.WAIT_OBJECT_0):
        win32process.TerminateProcess(self.hProcess, 0)
        win32api.Sleep(100)
