private void OpenProcess() { if (OpenParent || OpenOwner) { using (NtProcess process = OpenSpecificProcess(ProcessAccessRights.QueryLimitedInformation)) { WriteObject(OpenParent ? process.OpenParent(Access) : process.OpenOwner(Access)); } } else { WriteObject(OpenSpecificProcess(Access)); } }
/// <summary> /// Overridden ProcessRecord method. /// </summary> protected override void ProcessRecord() { if (ProcessId == -1 && !Current) { WriteObject(GetProcesses(), true); } else { if (OpenParent || OpenOwner) { using (NtProcess process = OpenSpecificProcess(ProcessAccessRights.QueryLimitedInformation)) { WriteObject(OpenParent ? process.OpenParent(Access) : process.OpenOwner(Access)); } } else { WriteObject(OpenSpecificProcess(Access)); } } }