C# Class ZeroInstall.Commands.Utils.RunHook

Hooks into the creation of new processes to inject API hooks.
Inheritance: IDisposable
Show file Open project: 0install/0install-win

Public Methods

Method Description
Dispose ( ) : void

Unhooks from the creation of new processes.

RunHook ( Selections selections, IExecutor executor, IFeedManager feedManager, ITaskHandler handler ) : System

Hooks into the creation of new processes on the current thread to inject API hooks.

Private Methods

Method Description
CreateProcessACallback ( string lpApplicationName, string lpCommandLine, IntPtr lpProcessAttributes, IntPtr lpThreadAttributes, bool bInheritHandles, uint dwCreationFlags, IntPtr lpEnvironment, string lpCurrentDirectory, IntPtr lpStartupInfo, EntryPoint.ProcessInformation &lpProcessInformation ) : bool
CreateProcessWCallback ( string lpApplicationName, string lpCommandLine, IntPtr lpProcessAttributes, IntPtr lpThreadAttributes, bool bInheritHandles, uint dwCreationFlags, IntPtr lpEnvironment, string lpCurrentDirectory, IntPtr lpStartupInfo, EntryPoint.ProcessInformation &lpProcessInformation ) : bool
GetIconPath ( [ command = null ) : string
GetInstallCommandFilter ( string path, string arguments, string zeroInstallCommand ) : RegistryFilterRule

Builds a RegistryFilterRule for a Store.Model.Capabilities.InstallCommands entry.

GetRegistryFilter ( ) : RegistryFilter

Gets a set of filter rules for registry access.

GetRelaunchControl ( ) : RelaunchControl

Collects information about how Commands within an Implementation can be relaunched.

Method Details

Dispose() public method

Unhooks from the creation of new processes.
public Dispose ( ) : void
return void

RunHook() public method

Hooks into the creation of new processes on the current thread to inject API hooks.
The main implementation is not cached (possibly because it is installed natively).
public RunHook ( Selections selections, IExecutor executor, IFeedManager feedManager, ITaskHandler handler ) : System
selections Selections The implementations chosen for launch.
executor IExecutor The executor used to launch the new process.
feedManager IFeedManager Provides access to remote and local s. Handles downloading, signature verification and caching.
handler ITaskHandler A callback object used when the the user needs to be asked questions or informed about download and IO tasks.
return System