C# 클래스 withSIX.Core.Presentation.Bridge.Services.ProcessManager

상속: IProcessManager, IDisposable, IPresentationService
파일 보기 프로젝트 열기: SIXNetworks/withSIX.Desktop

공개 메소드들

메소드 설명
Dispose ( ) : void
Launch ( BasicLaunchInfo info ) : ProcessExitResult
LaunchAndGrab ( BasicLaunchInfo info ) : ProcessExitResultWithOutput
LaunchAndGrabAsync ( BasicLaunchInfo info ) : Task
LaunchAndGrabTool ( ProcessStartInfo startInfo, string tool = null ) : ProcessExitResultWithOutput
LaunchAndGrabToolCmd ( ProcessStartInfo info, string tool ) : ProcessExitResultWithOutput
LaunchAndProcess ( LaunchAndProcessInfo info ) : ProcessExitResult
LaunchAndProcessAsync ( LaunchAndProcessInfo info ) : Task
LaunchAsync ( BasicLaunchInfo info ) : Task
LaunchElevated ( BasicLaunchInfo info ) : ProcessExitResult
LaunchElevatedAsync ( BasicLaunchInfo info ) : Task
ProcessManager ( ) : System
Start ( ProcessStartInfo startInfo ) : Process
StartAndForget ( ProcessStartInfo startInfo ) : void
StartAndForgetElevated ( ProcessStartInfo startInfo ) : void
StartElevated ( ProcessStartInfo startInfo ) : Process

비공개 메소드들

메소드 설명
BuildProcessException ( ProcessStartInfo startInfo, string tool, ProcessExitResultWithOutput ret ) : ProcessException
LaunchAndWaitForExit ( Process process, System.TimeSpan monitorOutput = null, System.TimeSpan monitorResponding = null ) : void
LaunchAndWaitForExitAsync ( ReactiveProcess process, System.TimeSpan monitorOutput, System.TimeSpan monitorResponding ) : Task
LaunchAndWaitForExitAsync ( ReactiveProcess process, System.TimeSpan monitorOutput, System.TimeSpan monitorResponding, CancellationToken token ) : Task
MonitorProcessOutput ( Process process, System.TimeSpan timeout ) : Timer
MonitorProcessOutput ( ReactiveProcess process, System.TimeSpan timeout ) : Timer
MonitorProcessResponding ( Process process, System.TimeSpan timeout ) : Timer
OnMonitorElapsed ( Process process, ProcessState state, System.TimeSpan timeout ) : bool
OnOutputMonitorElapsed ( Process process, ProcessState state, System.TimeSpan timeout ) : bool
ProcessBLI ( BasicLaunchInfo info ) : void
SetupMonitoringDisposable ( Process process, System.TimeSpan monitorOutput, System.TimeSpan monitorResponding ) : System.Linq.CompositeDisposable
SetupMonitoringDisposable ( ReactiveProcess process, System.TimeSpan monitorOutput, System.TimeSpan monitorResponding ) : System.Linq.CompositeDisposable
SetupStandardError ( LaunchAndProcessInfo info, ReactiveProcess process ) : IDisposable
SetupStandardOutput ( LaunchAndProcessInfo info, ReactiveProcess process ) : IDisposable
StartProcess ( Process process, System.TimeSpan monitorOutput = null, System.TimeSpan monitorResponding = null ) : System.Linq.CompositeDisposable
TryCheckHasExited ( Process process ) : bool
TryCheckResponding ( Process process ) : bool
TryGetLength ( Stream stdOut ) : long
TryKillDueNotRespondingTimeout ( Process process, System.TimeSpan timeout ) : void
TryKillDueToNoOutputReceivedTimeout ( Process process, System.TimeSpan timeout ) : void

메소드 상세

Dispose() 공개 메소드

public Dispose ( ) : void
리턴 void

Launch() 공개 메소드

public Launch ( BasicLaunchInfo info ) : ProcessExitResult
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResult

LaunchAndGrab() 공개 메소드

public LaunchAndGrab ( BasicLaunchInfo info ) : ProcessExitResultWithOutput
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResultWithOutput

LaunchAndGrabAsync() 공개 메소드

public LaunchAndGrabAsync ( BasicLaunchInfo info ) : Task
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 Task

LaunchAndGrabTool() 공개 메소드

public LaunchAndGrabTool ( ProcessStartInfo startInfo, string tool = null ) : ProcessExitResultWithOutput
startInfo System.Diagnostics.ProcessStartInfo
tool string
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResultWithOutput

LaunchAndGrabToolCmd() 공개 메소드

public LaunchAndGrabToolCmd ( ProcessStartInfo info, string tool ) : ProcessExitResultWithOutput
info System.Diagnostics.ProcessStartInfo
tool string
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResultWithOutput

LaunchAndProcess() 공개 메소드

public LaunchAndProcess ( LaunchAndProcessInfo info ) : ProcessExitResult
info withSIX.Core.Services.Infrastructure.LaunchAndProcessInfo
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResult

LaunchAndProcessAsync() 공개 메소드

public LaunchAndProcessAsync ( LaunchAndProcessInfo info ) : Task
info withSIX.Core.Services.Infrastructure.LaunchAndProcessInfo
리턴 Task

LaunchAsync() 공개 메소드

public LaunchAsync ( BasicLaunchInfo info ) : Task
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 Task

LaunchElevated() 공개 메소드

public LaunchElevated ( BasicLaunchInfo info ) : ProcessExitResult
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 withSIX.Core.Services.Infrastructure.ProcessExitResult

LaunchElevatedAsync() 공개 메소드

public LaunchElevatedAsync ( BasicLaunchInfo info ) : Task
info withSIX.Core.Services.Infrastructure.BasicLaunchInfo
리턴 Task

ProcessManager() 공개 메소드

public ProcessManager ( ) : System
리턴 System

Start() 공개 메소드

public Start ( ProcessStartInfo startInfo ) : Process
startInfo System.Diagnostics.ProcessStartInfo
리턴 System.Diagnostics.Process

StartAndForget() 공개 메소드

public StartAndForget ( ProcessStartInfo startInfo ) : void
startInfo System.Diagnostics.ProcessStartInfo
리턴 void

StartAndForgetElevated() 공개 메소드

public StartAndForgetElevated ( ProcessStartInfo startInfo ) : void
startInfo System.Diagnostics.ProcessStartInfo
리턴 void

StartElevated() 공개 메소드

public StartElevated ( ProcessStartInfo startInfo ) : Process
startInfo System.Diagnostics.ProcessStartInfo
리턴 System.Diagnostics.Process