UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FWindowsPlatformProcess Struct Reference

#include <WindowsPlatformProcess.h>

+ Inheritance diagram for FWindowsPlatformProcess:

Classes

class  FProcEnumerator
 
struct  FProcEnumInfo
 
struct  FWindowsSemaphore
 

Static Public Member Functions

static CORE_API bool SetProcessAffinity (uint32 NumCoresForAffinity, bool bPhysicalCoresOnly)
 
static CORE_API bool IsProcessAffinitySet ()
 
static CORE_API voidGetDllHandle (const TCHAR *Filename)
 
static CORE_API void FreeDllHandle (void *DllHandle)
 
static CORE_API voidGetDllExport (void *DllHandle, const TCHAR *ProcName)
 
static CORE_API void AddDllDirectory (const TCHAR *Directory)
 
static CORE_API void GetDllDirectories (TArray< FString > &OutDllDirectories)
 
static CORE_API void PushDllDirectory (const TCHAR *Directory)
 
static CORE_API void PopDllDirectory (const TCHAR *Directory)
 
static CORE_API uint32 GetCurrentProcessId ()
 
static CORE_API uint32 GetCurrentCoreNumber ()
 
static CORE_API void SetThreadAffinityMask (uint64 AffinityMask)
 
static CORE_API void SetThreadName (const TCHAR *ThreadName)
 
static CORE_API void SetThreadPriority (EThreadPriority NewPriority)
 
static CORE_API const TCHARBaseDir ()
 
static CORE_API const TCHARUserDir ()
 
static CORE_API const TCHARUserTempDir ()
 
static CORE_API const TCHARUserSettingsDir ()
 
static CORE_API const TCHARUserHomeDir ()
 
static CORE_API const TCHARUserSettingsDirMediumIntegrity ()
 
static CORE_API const TCHARApplicationSettingsDir ()
 
static CORE_API FString GetApplicationSettingsDir (const ApplicationSettingsContext &Settings)
 
static CORE_API const TCHARWindowsSystemDir ()
 
static CORE_API const TCHARComputerName ()
 
static CORE_API const TCHARUserName (bool bOnlyAlphaNumeric=true)
 
static CORE_API void SetCurrentWorkingDirectoryToBaseDir ()
 
static CORE_API FString GetCurrentWorkingDirectory ()
 
static CORE_API const FString ShaderWorkingDir ()
 
static CORE_API const TCHARExecutablePath ()
 
static CORE_API const TCHARExecutableName (bool bRemoveExtension=true)
 
static CORE_API FString GenerateApplicationPath (const FString &AppName, EBuildConfiguration BuildConfiguration)
 
static CORE_API const TCHARGetArchitectureSuffix ()
 
static CORE_API const TCHARGetModuleExtension ()
 
static CORE_API const TCHARGetBinariesSubdirectory ()
 
static CORE_API const FString GetModulesDirectory ()
 
static CORE_API FProcHandle CreateProc (const TCHAR *URL, const TCHAR *Parms, bool bLaunchDetached, bool bLaunchHidden, bool bLaunchReallyHidden, uint32 *OutProcessID, int32 PriorityModifier, const TCHAR *OptionalWorkingDirectory, void *PipeWriteChild, void *PipeReadChild=nullptr)
 
static CORE_API FProcHandle CreateProc (const TCHAR *URL, const TCHAR *Parms, bool bLaunchDetached, bool bLaunchHidden, bool bLaunchReallyHidden, uint32 *OutProcessID, int32 PriorityModifier, const TCHAR *OptionalWorkingDirectory, void *PipeWriteChild, void *PipeReadChild, void *PipeStdErrChild)
 
static CORE_API TTuple< FProcHandle, UE::HAL::EProcessIdCreateProc (const UE::HAL::FProcessStartInfo &StartInfo)
 
static CORE_API bool SetProcPriority (FProcHandle &InProcHandle, int32 PriorityModifier)
 
static CORE_API FProcHandle OpenProcess (uint32 ProcessID)
 
static CORE_API bool IsProcRunning (FProcHandle &ProcessHandle)
 
static CORE_API void WaitForProc (FProcHandle &ProcessHandle)
 
static CORE_API void CloseProc (FProcHandle &ProcessHandle)
 
static CORE_API void TerminateProc (FProcHandle &ProcessHandle, bool KillTree=false)
 
static CORE_API void TerminateProcTreeWithPredicate (FProcHandle &ProcessHandle, TFunctionRef< bool(uint32 ProcessId, const TCHAR *ApplicationName)> Predicate)
 
static CORE_API bool GetProcReturnCode (FProcHandle &ProcHandle, int32 *ReturnCode)
 
static CORE_API bool GetApplicationMemoryUsage (uint32 ProcessId, SIZE_T *OutMemoryUsage)
 
static CORE_API bool GetPerFrameProcessorUsage (uint32 ProcessId, float &ProcessUsageFraction, float &IdleUsageFraction)
 
static CORE_API bool IsApplicationRunning (uint32 ProcessId)
 
static CORE_API bool IsApplicationRunning (const TCHAR *ProcName)
 
static CORE_API FString GetApplicationName (uint32 ProcessId)
 
static CORE_API bool ExecProcess (const TCHAR *URL, const TCHAR *Params, int32 *OutReturnCode, FString *OutStdOut, FString *OutStdErr, const TCHAR *OptionalWorkingDirectory=NULL, bool bShouldEndWithParentProcess=false)
 
static CORE_API bool ExecElevatedProcess (const TCHAR *URL, const TCHAR *Params, int32 *OutReturnCode)
 
static CORE_API FProcHandle CreateElevatedProcess (const TCHAR *URL, const TCHAR *Params)
 
static CORE_API bool LaunchFileInDefaultExternalApplication (const TCHAR *FileName, const TCHAR *Parms=NULL, ELaunchVerb::Type Verb=ELaunchVerb::Open, bool bPromptToOpenOnFailure=true)
 
static CORE_API void ExploreFolder (const TCHAR *FilePath)
 
static CORE_API bool ResolveNetworkPath (FString InUNCPath, FString &OutPath)
 
static CORE_API void Sleep (float Seconds)
 
static CORE_API void SleepNoStats (float Seconds)
 
static CORE_API void SleepInfinite ()
 
static CORE_API void YieldThread ()
 
static CORE_API class FEventCreateSynchEvent (bool bIsManualReset=false)
 
static CORE_API class FRunnableThreadCreateRunnableThread ()
 
static CORE_API void ClosePipe (void *ReadPipe, void *WritePipe)
 
static CORE_API bool CreatePipe (void *&ReadPipe, void *&WritePipe, bool bWritePipeLocal=false)
 
static CORE_API FString ReadPipe (void *ReadPipe)
 
static CORE_API bool ReadPipeToArray (void *ReadPipe, TArray< uint8 > &Output)
 
static CORE_API bool WritePipe (void *WritePipe, const FString &Message, FString *OutWritten=nullptr)
 
static CORE_API bool WritePipe (void *WritePipe, const uint8 *Data, const int32 DataLength, int32 *OutDataLength=nullptr)
 
static CORE_API FSemaphoreNewInterprocessSynchObject (const FString &Name, bool bCreate, uint32 MaxLocks=1)
 
static CORE_API FSemaphoreNewInterprocessSynchObject (const TCHAR *Name, bool bCreate, uint32 MaxLocks=1)
 
static CORE_API bool DeleteInterprocessSynchObject (FSemaphore *Object)
 
static CORE_API bool Daemonize ()
 
static CORE_API void SetupGameThread ()
 
static CORE_API void SetupAudioThread ()
 
static CORE_API void TeardownAudioThread ()
 
static CORE_API bool IsFirstInstance ()
 
static CORE_API TSharedPtr< IProcessSentinelCreateProcessSentinelObject ()
 
static CORE_API void CeaseBeingFirstInstance ()
 Releases locks that we held for IsFirstInstance check.
 
static CORE_API bool TryGetMemoryUsage (FProcHandle &ProcessHandle, FPlatformProcessMemoryStats &OutStats)
 
static CORE_API bool ShouldExpectLowIntegrityLevel ()
 
static CORE_API bool CanLaunchURL (const TCHAR *URL)
 
static CORE_API void LaunchURL (const TCHAR *URL, const TCHAR *Parms, FString *Error)
 
- Static Public Member Functions inherited from FGenericPlatformProcess
static CORE_API voidGetDllHandle (const TCHAR *Filename)
 
static CORE_API void FreeDllHandle (void *DllHandle)
 
static CORE_API voidGetDllExport (void *DllHandle, const TCHAR *ProcName)
 
static UE_FORCEINLINE_HINT void AddDllDirectory (const TCHAR *Directory)
 
static UE_FORCEINLINE_HINT void PushDllDirectory (const TCHAR *Directory)
 
static UE_FORCEINLINE_HINT void PopDllDirectory (const TCHAR *Directory)
 
static UE_FORCEINLINE_HINT void GetDllDirectories (TArray< FString > &OutDllDirectories)
 
static CORE_API uint32 GetCurrentProcessId ()
 
static CORE_API uint32 GetCurrentCoreNumber ()
 
static bool GetPerFrameProcessorUsage (uint32 ProcessId, float &ProcessUsageFraction, float &IdleUsageFraction)
 
static CORE_API void SetThreadAffinityMask (uint64 AffinityMask)
 
static CORE_API void SetThreadPriority (EThreadPriority NewPriority)
 
static void SetThreadName (const TCHAR *ThreadName)
 
static CORE_API uint32 GetStackSize ()
 
static void DumpThreadInfo (const TCHAR *MarkerName)
 
static void SetupGameThread ()
 
static void SetupRenderThread ()
 
static void SetupAudioThread ()
 
static void TeardownAudioThread ()
 
static CORE_API bool ShouldSaveToUserDir ()
 
static CORE_API const TCHARBaseDir ()
 
static CORE_API const TCHARUserDir ()
 
static CORE_API const TCHARUserSettingsDir ()
 
static CORE_API const TCHARUserTempDir ()
 
static CORE_API const TCHARUserHomeDir ()
 
static CORE_API const TCHARApplicationSettingsDir ()
 
static CORE_API FString GetApplicationSettingsDir (const ApplicationSettingsContext &Settings)
 
static CORE_API const TCHARComputerName ()
 
static CORE_API const TCHARUserName (bool bOnlyAlphaNumeric=true)
 
static CORE_API const TCHARShaderDir ()
 
static CORE_API void SetShaderDir (const TCHAR *Where)
 
static CORE_API void SetCurrentWorkingDirectoryToBaseDir ()
 
static CORE_API FString GetCurrentWorkingDirectory ()
 
static bool SetProcessLimits (EProcessResource::Type Resource, uint64 Limit)
 
static CORE_API const FString ShaderWorkingDir ()
 
static CORE_API void CleanShaderWorkingDir ()
 
static CORE_API const TCHARExecutablePath ()
 
static CORE_API const TCHARExecutableName (bool bRemoveExtension=true)
 
static CORE_API FString GenerateApplicationPath (const FString &AppName, EBuildConfiguration BuildConfiguration)
 
static CORE_API const TCHARGetArchitectureSuffix ()
 
static CORE_API const TCHARGetModulePrefix ()
 
static CORE_API const TCHARGetModuleExtension ()
 
static CORE_API const TCHARGetBinariesSubdirectory ()
 
static CORE_API const FString GetModulesDirectory ()
 
static CORE_API bool ModuleExists (const FString &Filename)
 
static CORE_API void LaunchURL (const TCHAR *URL, const TCHAR *Parms, FString *Error)
 
static CORE_API bool LaunchURLFiltered (const TCHAR *URL, const TCHAR *Parms, FString *Error, const UE::Core::FURLRequestFilter &Filter)
 
static CORE_API bool CanLaunchURL (const TCHAR *URL)
 
static CORE_API FString GetGameBundleId ()
 
static CORE_API FProcHandle CreateProc (const TCHAR *URL, const TCHAR *Parms, bool bLaunchDetached, bool bLaunchHidden, bool bLaunchReallyHidden, uint32 *OutProcessID, int32 PriorityModifier, const TCHAR *OptionalWorkingDirectory, void *PipeWriteChild, void *PipeReadChild=nullptr)
 
static CORE_API FProcHandle CreateProc (const TCHAR *URL, const TCHAR *Parms, bool bLaunchDetached, bool bLaunchHidden, bool bLaunchReallyHidden, uint32 *OutProcessID, int32 PriorityModifier, const TCHAR *OptionalWorkingDirectory, void *PipeWriteChild, void *PipeReadChild, void *PipeStdErrChild)
 
static CORE_API TTuple< FProcHandle, UE::HAL::EProcessIdCreateProc (const UE::HAL::FProcessStartInfo &StartInfo)
 
static CORE_API FProcHandle OpenProcess (uint32 ProcessID)
 
static CORE_API bool IsProcRunning (FProcHandle &ProcessHandle)
 
static CORE_API void WaitForProc (FProcHandle &ProcessHandle)
 
static CORE_API void CloseProc (FProcHandle &ProcessHandle)
 
static CORE_API void TerminateProc (FProcHandle &ProcessHandle, bool KillTree=false)
 
static CORE_API void TerminateProcTreeWithPredicate (FProcHandle &ProcessHandle, TFunctionRef< bool(uint32 ProcessId, const TCHAR *ApplicationName)> Predicate)
 
static CORE_API EWaitAndForkResult WaitAndFork ()
 
static CORE_API bool GetProcReturnCode (FProcHandle &ProcHandle, int32 *ReturnCode)
 
static CORE_API bool IsApplicationRunning (uint32 ProcessId)
 
static CORE_API bool IsApplicationRunning (const TCHAR *ProcName)
 
static CORE_API FString GetApplicationName (uint32 ProcessId)
 
static CORE_API bool GetApplicationMemoryUsage (uint32 ProcessId, SIZE_T *OutMemoryUsage)
 
static CORE_API bool ExecProcess (const TCHAR *URL, const TCHAR *Params, int32 *OutReturnCode, FString *OutStdOut, FString *OutStdErr, const TCHAR *OptionalWorkingDirectory=NULL, bool bShouldEndWithParentProcess=false)
 
static CORE_API bool ExecElevatedProcess (const TCHAR *URL, const TCHAR *Params, int32 *OutReturnCode)
 
static CORE_API bool LaunchFileInDefaultExternalApplication (const TCHAR *FileName, const TCHAR *Parms=NULL, ELaunchVerb::Type Verb=ELaunchVerb::Open, bool bPromptToOpenOnFailure=true)
 
static CORE_API void ExploreFolder (const TCHAR *FilePath)
 
static CORE_API void ConditionalSleep (TFunctionRef< bool()> Condition, float SleepTime=0.0f)
 
static CORE_API class FEventCreateSynchEvent (bool bIsManualReset=false)
 
static CORE_API class FEventGetSynchEventFromPool (bool bIsManualReset=false)
 
static CORE_API void FlushPoolSyncEvents ()
 
static CORE_API void ReturnSynchEventToPool (FEvent *Event)
 
static CORE_API class FRunnableThreadCreateRunnableThread ()
 
static CORE_API void ClosePipe (void *ReadPipe, void *WritePipe)
 
static CORE_API bool CreatePipe (void *&ReadPipe, void *&WritePipe, bool bWritePipeLocal=false)
 
static CORE_API FString ReadPipe (void *ReadPipe)
 
static CORE_API bool ReadPipeToArray (void *ReadPipe, TArray< uint8 > &Output)
 
static CORE_API bool WritePipe (void *WritePipe, const FString &Message, FString *OutWritten=nullptr)
 
static CORE_API bool WritePipe (void *WritePipe, const uint8 *Data, const int32 DataLength, int32 *OutDataLength=nullptr)
 
static CORE_API bool SupportsMultithreading ()
 
static CORE_API FSemaphoreNewInterprocessSynchObject (const FString &Name, bool bCreate, uint32 MaxLocks=1)
 
static CORE_API FSemaphoreNewInterprocessSynchObject (const TCHAR *Name, bool bCreate, uint32 MaxLocks=1)
 
static CORE_API bool DeleteInterprocessSynchObject (FSemaphore *Object)
 
static CORE_API bool Daemonize ()
 
static CORE_API bool IsFirstInstance ()
 
static CORE_API void CeaseBeingFirstInstance ()
 
static CORE_API void TearDown ()
 
static bool SkipWaitForStats ()
 
static bool TryGetMemoryUsage (FProcHandle &ProcessHandle, FPlatformProcessMemoryStats &OutStats)
 
static CORE_API ENamedThreads::Type GetDesiredThreadForUObjectReferenceCollector ()
 
static CORE_API void ModifyThreadAssignmentForUObjectReferenceCollector (int32 &NumThreads, int32 &NumBackgroundThreads, ENamedThreads::Type &NormalThreadName, ENamedThreads::Type &BackgroundThreadName)
 
static CORE_API TSharedPtr< IProcessSentinelCreateProcessSentinelObject ()
 
static CORE_API TSharedPtr< IProcessSentinelCreateProcessSentinel (const TCHAR *Name, const FString &Contents)
 
static void Yield ()
 
static void YieldCycles (uint64 Cycles)
 

Static Public Attributes

static CORE_API FLaunchURLOverride LaunchURLOverrideDelegate
 

Static Protected Member Functions

static CORE_API void ReadFromPipes (FString *OutStrings[], Windows::HANDLE InPipes[], int32 PipeCount)
 

Additional Inherited Members

- Public Types inherited from FGenericPlatformProcess
enum class  EWaitAndForkResult : uint8 { Error , Parent , Child }
 

Detailed Description

Windows implementation of the process handle. Windows implementation of the Process OS functions.

Member Function Documentation

◆ AddDllDirectory()

void FWindowsPlatformProcess::AddDllDirectory ( const TCHAR Directory)
static

◆ ApplicationSettingsDir()

const TCHAR * FWindowsPlatformProcess::ApplicationSettingsDir ( )
static

◆ BaseDir()

const TCHAR * FWindowsPlatformProcess::BaseDir ( )
static

◆ CanLaunchURL()

bool FWindowsPlatformProcess::CanLaunchURL ( const TCHAR URL)
static

◆ CeaseBeingFirstInstance()

void FWindowsPlatformProcess::CeaseBeingFirstInstance ( )
static

Releases locks that we held for IsFirstInstance check.

◆ ClosePipe()

void FWindowsPlatformProcess::ClosePipe ( void ReadPipe,
void WritePipe 
)
static

◆ CloseProc()

void FWindowsPlatformProcess::CloseProc ( FProcHandle ProcessHandle)
static

◆ ComputerName()

const TCHAR * FWindowsPlatformProcess::ComputerName ( )
static

◆ CreateElevatedProcess()

FProcHandle FWindowsPlatformProcess::CreateElevatedProcess ( const TCHAR URL,
const TCHAR Params 
)
static

◆ CreatePipe()

bool FWindowsPlatformProcess::CreatePipe ( void *&  ReadPipe,
void *&  WritePipe,
bool  bWritePipeLocal = false 
)
static

◆ CreateProc() [1/3]

FProcHandle FWindowsPlatformProcess::CreateProc ( const TCHAR URL,
const TCHAR Parms,
bool  bLaunchDetached,
bool  bLaunchHidden,
bool  bLaunchReallyHidden,
uint32 OutProcessID,
int32  PriorityModifier,
const TCHAR OptionalWorkingDirectory,
void PipeWriteChild,
void PipeReadChild,
void PipeStdErrChild 
)
static

◆ CreateProc() [2/3]

FProcHandle FWindowsPlatformProcess::CreateProc ( const TCHAR URL,
const TCHAR Parms,
bool  bLaunchDetached,
bool  bLaunchHidden,
bool  bLaunchReallyHidden,
uint32 OutProcessID,
int32  PriorityModifier,
const TCHAR OptionalWorkingDirectory,
void PipeWriteChild,
void PipeReadChild = nullptr 
)
static

◆ CreateProc() [3/3]

TTuple< FProcHandle, UE::HAL::EProcessId > FWindowsPlatformProcess::CreateProc ( const UE::HAL::FProcessStartInfo StartInfo)
static

◆ CreateProcessSentinelObject()

TSharedPtr< IProcessSentinel > FWindowsPlatformProcess::CreateProcessSentinelObject ( )
static

◆ CreateRunnableThread()

FRunnableThread * FWindowsPlatformProcess::CreateRunnableThread ( )
static

◆ CreateSynchEvent()

FEvent * FWindowsPlatformProcess::CreateSynchEvent ( bool  bIsManualReset = false)
static

◆ Daemonize()

bool FWindowsPlatformProcess::Daemonize ( )
static

◆ DeleteInterprocessSynchObject()

bool FWindowsPlatformProcess::DeleteInterprocessSynchObject ( FSemaphore Object)
static

◆ ExecElevatedProcess()

bool FWindowsPlatformProcess::ExecElevatedProcess ( const TCHAR URL,
const TCHAR Params,
int32 OutReturnCode 
)
static

◆ ExecProcess()

bool FWindowsPlatformProcess::ExecProcess ( const TCHAR URL,
const TCHAR Params,
int32 OutReturnCode,
FString *  OutStdOut,
FString *  OutStdErr,
const TCHAR OptionalWorkingDirectory = NULL,
bool  bShouldEndWithParentProcess = false 
)
static

Executes a process, returning the return code, stdout, and stderr. This call blocks until the process has returned.

◆ ExecutableName()

const TCHAR * FWindowsPlatformProcess::ExecutableName ( bool  bRemoveExtension = true)
static

◆ ExecutablePath()

const TCHAR * FWindowsPlatformProcess::ExecutablePath ( )
static

◆ ExploreFolder()

void FWindowsPlatformProcess::ExploreFolder ( const TCHAR FilePath)
static

◆ FreeDllHandle()

void FWindowsPlatformProcess::FreeDllHandle ( void DllHandle)
static

◆ GenerateApplicationPath()

FString FWindowsPlatformProcess::GenerateApplicationPath ( const FString &  AppName,
EBuildConfiguration  BuildConfiguration 
)
static

◆ GetApplicationMemoryUsage()

bool FWindowsPlatformProcess::GetApplicationMemoryUsage ( uint32  ProcessId,
SIZE_T OutMemoryUsage 
)
static

◆ GetApplicationName()

FString FWindowsPlatformProcess::GetApplicationName ( uint32  ProcessId)
static

◆ GetApplicationSettingsDir()

FString FWindowsPlatformProcess::GetApplicationSettingsDir ( const ApplicationSettingsContext Settings)
static

◆ GetArchitectureSuffix()

const TCHAR * FWindowsPlatformProcess::GetArchitectureSuffix ( )
static

◆ GetBinariesSubdirectory()

const TCHAR * FWindowsPlatformProcess::GetBinariesSubdirectory ( )
static

◆ GetCurrentCoreNumber()

uint32 FWindowsPlatformProcess::GetCurrentCoreNumber ( )
static

◆ GetCurrentProcessId()

uint32 FWindowsPlatformProcess::GetCurrentProcessId ( )
static

◆ GetCurrentWorkingDirectory()

FString FWindowsPlatformProcess::GetCurrentWorkingDirectory ( )
static

Get the current working directory (only really makes sense on desktop platforms)

◆ GetDllDirectories()

void FWindowsPlatformProcess::GetDllDirectories ( TArray< FString > &  OutDllDirectories)
static

◆ GetDllExport()

void * FWindowsPlatformProcess::GetDllExport ( void DllHandle,
const TCHAR ProcName 
)
static

◆ GetDllHandle()

void * FWindowsPlatformProcess::GetDllHandle ( const TCHAR Filename)
static

◆ GetModuleExtension()

const TCHAR * FWindowsPlatformProcess::GetModuleExtension ( )
static

◆ GetModulesDirectory()

const FString FWindowsPlatformProcess::GetModulesDirectory ( )
static

◆ GetPerFrameProcessorUsage()

bool FWindowsPlatformProcess::GetPerFrameProcessorUsage ( uint32  ProcessId,
float ProcessUsageFraction,
float IdleUsageFraction 
)
static

◆ GetProcReturnCode()

bool FWindowsPlatformProcess::GetProcReturnCode ( FProcHandle ProcHandle,
int32 ReturnCode 
)
static

◆ IsApplicationRunning() [1/2]

bool FWindowsPlatformProcess::IsApplicationRunning ( const TCHAR ProcName)
static

◆ IsApplicationRunning() [2/2]

bool FWindowsPlatformProcess::IsApplicationRunning ( uint32  ProcessId)
static

◆ IsFirstInstance()

bool FWindowsPlatformProcess::IsFirstInstance ( )
static

◆ IsProcessAffinitySet()

bool FWindowsPlatformProcess::IsProcessAffinitySet ( )
static

◆ IsProcRunning()

bool FWindowsPlatformProcess::IsProcRunning ( FProcHandle ProcessHandle)
static

◆ LaunchFileInDefaultExternalApplication()

bool FWindowsPlatformProcess::LaunchFileInDefaultExternalApplication ( const TCHAR FileName,
const TCHAR Parms = NULL,
ELaunchVerb::Type  Verb = ELaunchVerb::Open,
bool  bPromptToOpenOnFailure = true 
)
static

◆ LaunchURL()

void FWindowsPlatformProcess::LaunchURL ( const TCHAR URL,
const TCHAR Parms,
FString *  Error 
)
static

◆ NewInterprocessSynchObject() [1/2]

FWindowsPlatformProcess::FSemaphore * FWindowsPlatformProcess::NewInterprocessSynchObject ( const FString &  Name,
bool  bCreate,
uint32  MaxLocks = 1 
)
static

◆ NewInterprocessSynchObject() [2/2]

FWindowsPlatformProcess::FSemaphore * FWindowsPlatformProcess::NewInterprocessSynchObject ( const TCHAR Name,
bool  bCreate,
uint32  MaxLocks = 1 
)
static

◆ OpenProcess()

FProcHandle FWindowsPlatformProcess::OpenProcess ( uint32  ProcessID)
static

◆ PopDllDirectory()

void FWindowsPlatformProcess::PopDllDirectory ( const TCHAR Directory)
static

◆ PushDllDirectory()

void FWindowsPlatformProcess::PushDllDirectory ( const TCHAR Directory)
static

◆ ReadFromPipes()

void FWindowsPlatformProcess::ReadFromPipes ( FString *  OutStrings[],
Windows::HANDLE  InPipes[],
int32  PipeCount 
)
staticprotected

Reads from a collection of anonymous pipes.

Parameters
OutStringsWill hold the read data.
InPipesThe pipes to read from.
PipeCountThe number of pipes.

◆ ReadPipe()

FString FWindowsPlatformProcess::ReadPipe ( void ReadPipe)
static

◆ ReadPipeToArray()

bool FWindowsPlatformProcess::ReadPipeToArray ( void ReadPipe,
TArray< uint8 > &  Output 
)
static

◆ ResolveNetworkPath()

bool FWindowsPlatformProcess::ResolveNetworkPath ( FString  InUNCPath,
FString &  OutPath 
)
static

Resolves UNC path to local (full) path if possible.

Parameters
InUNCPathUNC path to resolve
OutPathResolved local path
Returns
true if the path was resolved, false otherwise

◆ SetCurrentWorkingDirectoryToBaseDir()

void FWindowsPlatformProcess::SetCurrentWorkingDirectoryToBaseDir ( )
static

◆ SetProcessAffinity()

bool FWindowsPlatformProcess::SetProcessAffinity ( uint32  NumCoresForAffinity,
bool  bPhysicalCoresOnly 
)
static

◆ SetProcPriority()

bool FWindowsPlatformProcess::SetProcPriority ( FProcHandle InProcHandle,
int32  PriorityModifier 
)
static

◆ SetThreadAffinityMask()

void FWindowsPlatformProcess::SetThreadAffinityMask ( uint64  AffinityMask)
static

◆ SetThreadName()

void FWindowsPlatformProcess::SetThreadName ( const TCHAR ThreadName)
static

◆ SetThreadPriority()

void FWindowsPlatformProcess::SetThreadPriority ( EThreadPriority  NewPriority)
static

◆ SetupAudioThread()

void FWindowsPlatformProcess::SetupAudioThread ( )
static

◆ SetupGameThread()

void FWindowsPlatformProcess::SetupGameThread ( )
static

◆ ShaderWorkingDir()

const FString FWindowsPlatformProcess::ShaderWorkingDir ( )
static

◆ ShouldExpectLowIntegrityLevel()

bool FWindowsPlatformProcess::ShouldExpectLowIntegrityLevel ( )
static

Whether to expect to run at a low process integrity level or not. This affects the paths that must be used for user and temp storage. The process may launch at default (medium) integrity level and then downgrade itself to low later for security benefits, so checking the current integrity level alone is not sufficient.

Returns
true if low integrity level should be expected, otherwise false.

◆ Sleep()

void FWindowsPlatformProcess::Sleep ( float  Seconds)
static

◆ SleepInfinite()

void FWindowsPlatformProcess::SleepInfinite ( )
static

◆ SleepNoStats()

void FWindowsPlatformProcess::SleepNoStats ( float  Seconds)
static

◆ TeardownAudioThread()

void FWindowsPlatformProcess::TeardownAudioThread ( )
static

◆ TerminateProc()

void FWindowsPlatformProcess::TerminateProc ( FProcHandle ProcessHandle,
bool  KillTree = false 
)
static

◆ TerminateProcTreeWithPredicate()

void FWindowsPlatformProcess::TerminateProcTreeWithPredicate ( FProcHandle ProcessHandle,
TFunctionRef< bool(uint32 ProcessId, const TCHAR *ApplicationName)>  Predicate 
)
static

◆ TryGetMemoryUsage()

bool FWindowsPlatformProcess::TryGetMemoryUsage ( FProcHandle ProcessHandle,
FPlatformProcessMemoryStats OutStats 
)
static

◆ UserDir()

const TCHAR * FWindowsPlatformProcess::UserDir ( )
static

◆ UserHomeDir()

const TCHAR * FWindowsPlatformProcess::UserHomeDir ( )
static

◆ UserName()

const TCHAR * FWindowsPlatformProcess::UserName ( bool  bOnlyAlphaNumeric = true)
static

◆ UserSettingsDir()

const TCHAR * FWindowsPlatformProcess::UserSettingsDir ( )
static

◆ UserSettingsDirMediumIntegrity()

const TCHAR * FWindowsPlatformProcess::UserSettingsDirMediumIntegrity ( )
static

◆ UserTempDir()

const TCHAR * FWindowsPlatformProcess::UserTempDir ( )
static

◆ WaitForProc()

void FWindowsPlatformProcess::WaitForProc ( FProcHandle ProcessHandle)
static

◆ WindowsSystemDir()

const TCHAR * FWindowsPlatformProcess::WindowsSystemDir ( )
static

◆ WritePipe() [1/2]

bool FWindowsPlatformProcess::WritePipe ( void WritePipe,
const FString &  Message,
FString *  OutWritten = nullptr 
)
static

◆ WritePipe() [2/2]

bool FWindowsPlatformProcess::WritePipe ( void WritePipe,
const uint8 Data,
const int32  DataLength,
int32 OutDataLength = nullptr 
)
static

◆ YieldThread()

void FWindowsPlatformProcess::YieldThread ( )
static

Member Data Documentation

◆ LaunchURLOverrideDelegate

PRAGMA_DISABLE_UNSAFE_TYPECAST_WARNINGS FLaunchURLOverride FWindowsPlatformProcess::LaunchURLOverrideDelegate
static

The documentation for this struct was generated from the following files: