# Processes user defined functions Reference

Below is a complete list of the user defined functions available in AutoIt. Click on a user defined function name for a detailed description.

When using them you need to add a #include <WinAPIProc.au3>.

User Defined Function | Description
--- | ---
_WinAPI_AdjustTokenPrivileges | Enables or disables privileges in the specified access token
_WinAPI_AssignProcessToJobObject | Assigns a process to an existing job object
_WinAPI_AttachConsole | Attaches the calling process to the console of the specified process
_WinAPI_AttachThreadInput | Attaches the input processing mechanism of one thread to that of another thread
_WinAPI_CreateJobObject | Creates or opens a job object
_WinAPI_CreateProcess | Creates a new process and its primary thread
_WinAPI_CreateProcessWithToken | Creates a new process and its primary thread in the security context of the specified token
_WinAPI_DuplicateTokenEx | Creates a new primary or impersonation access token that duplicates an existing token
_WinAPI_EmptyWorkingSet | Removes as many pages as possible from the working set of the specified process
_WinAPI_EnumChildProcess | Enumerates a child processes that belong to the specified process
_WinAPI_EnumDeviceDrivers | Retrieves the load address for each device driver in the system
_WinAPI_EnumProcessHandles | Enumerates a handles that belong to the specified process
_WinAPI_EnumProcessModules | Retrieves a handle and name for each module in the specified process
_WinAPI_EnumProcessThreads | Enumerates a threads that belong to the specified process
_WinAPI_EnumProcessWindows | Enumerates a windows that belong to the specified process
_WinAPI_FatalAppExit | Displays a message box and terminates the application
_WinAPI_GetCurrentProcessExplicitAppUserModelID | Retrieves the application-defined, explicit Application User Model ID for the current process
_WinAPI_GetCurrentProcessID | Returns the process identifier of the calling process
_WinAPI_GetCurrentThread | Retrieves a pseudo handle for the calling thread
_WinAPI_GetCurrentThreadId | Returns the thread identifier of the calling thread
_WinAPI_GetDeviceDriverBaseName | Retrieves the base name of the specified device driver
_WinAPI_GetDeviceDriverFileName | Retrieves the path available for the specified device driver
_WinAPI_GetExitCodeProcess | Retrieves the termination status of the specified process
_WinAPI_GetGuiResources | Retrieves the count of handles to graphical user interface (GUI) objects in use by the specified process
_WinAPI_GetModuleFileNameEx | Retrieves the fully-qualified path for the file containing the specified module
_WinAPI_GetModuleInformation | Retrieves information about the specified module
_WinAPI_GetPriorityClass | Retrieves the priority class for the specified process
_WinAPI_GetProcessAffinityMask | Obtains the affinity masks for the process and the system
_WinAPI_GetProcessCommandLine | Retrieves the command-line string for the specified process
_WinAPI_GetProcessFileName | Retrieves the fully-qualified path of the executable file for the specified process
_WinAPI_GetProcessHandleCount | Retrieves the number of open handles that belong to the specified process
_WinAPI_GetProcessID | Retrieves the process identifier of the specified process
_WinAPI_GetProcessIoCounters | Retrieves accounting information for all I/O operations performed by the specified process
_WinAPI_GetProcessMemoryInfo | Retrieves information about the memory usage of the specified process
_WinAPI_GetProcessName | Retrieves the name for the specified process
_WinAPI_GetProcessTimes | Retrieves timing information for the specified process
_WinAPI_GetProcessUser | Retrieves the user and domain name for the specified process
_WinAPI_GetProcessWorkingDirectory | Retrieves the current working directory for the specified process
_WinAPI_GetThreadDesktop | Retrieves a handle to the desktop assigned to the specified thread
_WinAPI_GetThreadErrorMode | Retrieves the error mode for the calling thread
_WinAPI_IsElevated | Determines whether the current process is elevated
_WinAPI_IsProcessInJob | Determines whether the process is running in the specified job
_WinAPI_IsWow64Process | Determines whether the specified process is running under WOW64
_WinAPI_OpenJobObject | Opens an existing job object
_WinAPI_OpenProcess | Returns a handle of an existing process object
_WinAPI_OpenProcessToken | Opens the access token associated with a process
_WinAPI_QueryInformationJobObject | Retrieves limit and job state information from the job object
_WinAPI_SetInformationJobObject | Sets limits for a job object
_WinAPI_SetPriorityClass | Sets the priority class for the specified process
_WinAPI_SetProcessAffinityMask | Sets a processor affinity mask for the threads of a specified process
_WinAPI_SetThreadDesktop | Assigns the specified desktop to the calling thread
_WinAPI_SetThreadErrorMode | Controls whether the system will handle the specified types of serious errors or whether the calling thread will handle them
_WinAPI_SetThreadExecutionState | Prevents the system from entering sleep or turning off the display while the current application is running
_WinAPI_TerminateJobObject | Terminates all processes currently associated with the job
_WinAPI_TerminateProcess | Terminates the specified process and all of its threads
_WinAPI_UserHandleGrantAccess | Grants or denies access to a handle to a User object to a job that has a user-interface restriction
_WinAPI_WriteConsole | Writes a character string to a console screen buffer