Class WinProcesses


  • public class WinProcesses
    extends java.lang.Object
    Collection of static methods to check for running processes on Windows and terminate them.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  WinProcesses.Info
      Class that holds information about running Windows processes.
    • Constructor Summary

      Constructors 
      Constructor Description
      WinProcesses()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean areInstalledLaunchersRunning()
      Determine if any of the installed launchers are currently running.
      static boolean closeProcesses​(int[] processIds, int timeout)
      Tries to close the processes with the given ids by sending a WM_CLOSE message to all visible top-level windows.
      static WinProcesses.Info[] getRunningProcesses()
      Get a list of all running processes the installer can see.
      static java.lang.String getWindowTitle​(int processId)
      Get the title of one of the visible top-level windows of this process.
      static boolean terminateProcesses​(int[] processIds)
      Terminates the processes with the given ids forcefully.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • WinProcesses

        public WinProcesses()
    • Method Detail

      • getRunningProcesses

        public static WinProcesses.Info[] getRunningProcesses()
        Get a list of all running processes the installer can see.
        Returns:
        info objects with module name and process id.
      • areInstalledLaunchersRunning

        public static boolean areInstalledLaunchersRunning()
        Determine if any of the installed launchers are currently running. All launchers in the currently set installation directory are checked. The "Install Files" action performs this check by default and warns the user that processes are running. With this method you can check for this condition earlier in your installer.
        Returns:
        true or false.
      • getWindowTitle

        public static java.lang.String getWindowTitle​(int processId)
        Get the title of one of the visible top-level windows of this process.
        Parameters:
        processId - the process id
        Returns:
        the title
      • terminateProcesses

        public static boolean terminateProcesses​(int[] processIds)
        Terminates the processes with the given ids forcefully.
        Parameters:
        processIds - the processes to terminate
        Returns:
        true if all processes have been terminated.
      • closeProcesses

        public static boolean closeProcesses​(int[] processIds,
                                             int timeout)
        Tries to close the processes with the given ids by sending a WM_CLOSE message to all visible top-level windows.
        Parameters:
        processIds - the processes to terminate
        timeout - the maximum time to wait for the processes to terminate after the message has been sent in milliseconds
        Returns:
        true if all processes have been terminated.