Package com.install4j.api.windows
Class WinProcesses
java.lang.Object
com.install4j.api.windows.WinProcesses
Collection of static methods to check for running processes on Windows and terminate them.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Class that holds information about running Windows processes. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
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[]
Get a list of all running processes the installer can see.static 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.
-
Constructor Details
-
WinProcesses
public WinProcesses()
-
-
Method Details
-
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
orfalse
.
-
getWindowTitle
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 terminatetimeout
- 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.
-