Process Clase

Definición

Proporciona acceso a procesos locales y remotos, y permite iniciar y detener procesos del sistema local.Provides access to local and remote processes and enables you to start and stop local system processes.

public ref class Process : System::ComponentModel::Component
public class Process : System.ComponentModel.Component
type Process = class
    inherit Component
Public Class Process
Inherits Component
Herencia
Process
Herencia

Ejemplos

En el ejemplo siguiente se utiliza una instancia de la clase Process para iniciar un proceso.The following example uses an instance of the Process class to start a process.

#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

int main()
{
    Process^ myProcess = gcnew Process;

    try
    {
        myProcess->StartInfo->UseShellExecute = false;
        // You can start any process, HelloWorld is a do-nothing example.
        myProcess->StartInfo->FileName = "C:\\HelloWorld.exe";
        myProcess->StartInfo->CreateNoWindow = true;
        myProcess->Start();
        // This code assumes the process you are starting will terminate itself. 
        // Given that is is started without a window so you cannot terminate it 
        // on the desktop, it must terminate itself or you can do it programmatically
        // from this application using the Kill method.
    }
    catch ( Exception^ e ) 
    {
        Console::WriteLine( e->Message );
    }
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        public static void Main()
        {
            try
            {
                using (Process myProcess = new Process())
                {
                    myProcess.StartInfo.UseShellExecute = false;
                    // You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe";
                    myProcess.StartInfo.CreateNoWindow = true;
                    myProcess.Start();
                    // This code assumes the process you are starting will terminate itself. 
                    // Given that is is started without a window so you cannot terminate it 
                    // on the desktop, it must terminate itself or you can do it programmatically
                    // from this application using the Kill method.
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        Public Shared Sub Main()
            Try
                Using myProcess As New Process()

                    myProcess.StartInfo.UseShellExecute = False
                    ' You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe"
                    myProcess.StartInfo.CreateNoWindow = True
                    myProcess.Start()
                    ' This code assumes the process you are starting will terminate itself. 
                    ' Given that is is started without a window so you cannot terminate it 
                    ' on the desktop, it must terminate itself or you can do it programmatically
                    ' from this application using the Kill method.
                End Using
            Catch e As Exception
                Console.WriteLine((e.Message))
            End Try
        End Sub
    End Class
End Namespace

En el ejemplo siguiente se usa la propia clase Process y un método Start estático para iniciar un proceso.The following example uses the Process class itself and a static Start method to start a process.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

// Opens the Internet Explorer application.
void OpenApplication(String^ myFavoritesPath)
{
    // Start Internet Explorer. Defaults to the home page.
    Process::Start("IExplore.exe");

    // Display the contents of the favorites folder in the browser.
    Process::Start(myFavoritesPath);
}

// Opens urls and .html documents using Internet Explorer.
void OpenWithArguments()
{
    // URLs are not considered documents. They can only be opened
    // by passing them as arguments.
    Process::Start("IExplore.exe", "www.northwindtraders.com");

    // Start a Web page using a browser associated with .html and .asp files.
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.htm");
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.asp");
}

// Uses the ProcessStartInfo class to start new processes,
// both in a minimized mode.
void OpenWithStartInfo()
{
    ProcessStartInfo^ startInfo = gcnew ProcessStartInfo("IExplore.exe");
    startInfo->WindowStyle = ProcessWindowStyle::Minimized;
    Process::Start(startInfo);
    startInfo->Arguments = "www.northwindtraders.com";
    Process::Start(startInfo);
}

int main()
{
    // Get the path that stores favorite links.
    String^ myFavoritesPath = Environment::GetFolderPath(Environment::SpecialFolder::Favorites);
    OpenApplication(myFavoritesPath);
    OpenWithArguments();
    OpenWithStartInfo();
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        // Opens the Internet Explorer application.
        void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);
        }

        // Opens urls and .html documents using Internet Explorer.
        void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        // Uses the ProcessStartInfo class to start new processes,
        // both in a minimized mode.
        void OpenWithStartInfo()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);
        }

        static void Main()
        {
            // Get the path that stores favorite links.
            string myFavoritesPath =
                Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

            MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        ' Opens the Internet Explorer application.
        Public Sub OpenApplication(myFavoritesPath As String)
            ' Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe")

            ' Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath)
        End Sub

        ' Opens URLs and .html documents using Internet Explorer.
        Sub OpenWithArguments()
            ' URLs are not considered documents. They can only be opened
            ' by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com")

            ' Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\myPath\myFile.htm")
            Process.Start("IExplore.exe", "C:\myPath\myFile.asp")
        End Sub

        ' Uses the ProcessStartInfo class to start new processes,
        ' both in a minimized mode.
        Sub OpenWithStartInfo()
            Dim startInfo As New ProcessStartInfo("IExplore.exe")
            startInfo.WindowStyle = ProcessWindowStyle.Minimized

            Process.Start(startInfo)

            startInfo.Arguments = "www.northwindtraders.com"

            Process.Start(startInfo)
        End Sub

        Shared Sub Main()
            ' Get the path that stores favorite links.
            Dim myFavoritesPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Favorites)

            Dim myProcess As New MyProcess()

            myProcess.OpenApplication(myFavoritesPath)
            myProcess.OpenWithArguments()
            myProcess.OpenWithStartInfo()
        End Sub
    End Class
End Namespace 'MyProcessSample

En el F# ejemplo siguiente se define una función runProc que inicia un proceso, captura toda la información de salida y de error y registra el número de milisegundos que se ha ejecutado el proceso.The following F# example defines a runProc function that starts a process, captures all output and error information, and records the number of milliseconds that the process has run. La función runProc tiene tres parámetros: el nombre de la aplicación que se va a iniciar, los argumentos que se van a suministrar a la aplicación y el directorio de inicio.The runProc function has three parameters: the name of application to launch, the arguments to supply to the application, and the starting directory.

open System
open System.Diagnostics

let runProc filename args startDir : seq<string> * seq<string> = 
    let timer = Stopwatch.StartNew()
    let procStartInfo = 
        ProcessStartInfo(
            RedirectStandardOutput = true,
            RedirectStandardError = true,
            UseShellExecute = false,
            FileName = filename,
            Arguments = args
        )
    match startDir with | Some d -> procStartInfo.WorkingDirectory <- d | _ -> ()

    let outputs = System.Collections.Generic.List<string>()
    let errors = System.Collections.Generic.List<string>()
    let outputHandler f (_sender:obj) (args:DataReceivedEventArgs) = f args.Data
    use p = new Process(StartInfo = procStartInfo)
    p.OutputDataReceived.AddHandler(DataReceivedEventHandler (outputHandler outputs.Add))
    p.ErrorDataReceived.AddHandler(DataReceivedEventHandler (outputHandler errors.Add))
    let started = 
        try
            p.Start()
        with | ex ->
            ex.Data.Add("filename", filename)
            reraise()
    if not started then
        failwithf "Failed to start process %s" filename
    printfn "Started %s with pid %i" p.ProcessName p.Id
    p.BeginOutputReadLine()
    p.BeginErrorReadLine()
    p.WaitForExit()
    timer.Stop()
    printfn "Finished %s after %A milliseconds" filename timer.ElapsedMilliseconds
    let cleanOut l = l |> Seq.filter (fun o -> String.IsNullOrEmpty o |> not)
    cleanOut outputs,cleanOut errors

ImaginaryDevelopment ha escrito el código de la función de runProc y está disponible en la licencia pública de Microsoft.The code for the runProc function was written by ImaginaryDevelopment and is available under the Microsoft Public License.

Comentarios

Un componente de Process proporciona acceso a un proceso que se está ejecutando en un equipo.A Process component provides access to a process that is running on a computer. Un proceso, en los términos más sencillos, es una aplicación en ejecución.A process, in the simplest terms, is a running app. Un subproceso es la unidad básica a la que el sistema operativo asigna tiempo de procesador.A thread is the basic unit to which the operating system allocates processor time. Un subproceso puede ejecutar cualquier parte del código del proceso, incluidos los elementos que se están ejecutando actualmente en otro subproceso.A thread can execute any part of the code of the process, including parts currently being executed by another thread.

El componente Process es una herramienta útil para iniciar, detener, controlar y supervisar aplicaciones.The Process component is a useful tool for starting, stopping, controlling, and monitoring apps. Puede usar el componente Process, para obtener una lista de los procesos que se están ejecutando o puede iniciar un nuevo proceso.You can use the Process component, to obtain a list of the processes that are running, or you can start a new process. Un componente de Process se utiliza para tener acceso a los procesos del sistema.A Process component is used to access system processes. Una vez inicializado un componente de Process, se puede utilizar para obtener información sobre el proceso en ejecución.After a Process component has been initialized, it can be used to obtain information about the running process. Esta información incluye el conjunto de subprocesos, los módulos cargados (archivos. dll y. exe) y la información de rendimiento, como la cantidad de memoria que está usando el proceso.Such information includes the set of threads, the loaded modules (.dll and .exe files), and performance information such as the amount of memory the process is using.

Este tipo implementa la interfaz IDisposable.This type implements the IDisposable interface. Cuando haya terminado de utilizar el tipo, debe desecharlo directa o indirectamente.When you have finished using the type, you should dispose of it either directly or indirectly. Para eliminar el tipo directamente, llame a su método Dispose en un bloque try/finally.To dispose of the type directly, call its Dispose method in a try/finally block. Para deshacerse de él indirectamente, use una construcción de lenguaje como using (en C#) o Using (en Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Para más información, vea la sección "Uso de objetos que implementan IDisposable" en el tema de la interfaz IDisposable.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Nota

los procesos de 32 bits no pueden tener acceso a los módulos de un proceso de 64 bits.32-bit processes cannot access the modules of a 64-bit process. Si intenta obtener información sobre un proceso de 64 bits de un proceso de 32 bits, obtendrá una excepción Win32Exception.If you try to get information about a 64-bit process from a 32-bit process, you will get a Win32Exception exception. Por otro lado, un proceso de 64 bits puede tener acceso a los módulos de un proceso de 32 bits.A 64-bit process, on the other hand, can access the modules of a 32-bit process.

El componente de proceso obtiene información sobre un grupo de propiedades a la vez.The process component obtains information about a group of properties all at once. Una vez que el componente de Process ha obtenido información sobre un miembro de un grupo, almacenará en memoria caché los valores para las demás propiedades de ese grupo y no obtendrá información nueva sobre los demás miembros del grupo hasta que llame al método Refresh.After the Process component has obtained information about one member of any group, it will cache the values for the other properties in that group and not obtain new information about the other members of the group until you call the Refresh method. Por lo tanto, no se garantiza que un valor de propiedad sea más reciente que la última llamada al método Refresh.Therefore, a property value is not guaranteed to be any newer than the last call to the Refresh method. Los desgloses de grupo dependen del sistema operativo.The group breakdowns are operating-system dependent.

Si tiene una variable de ruta de acceso declarada en el sistema mediante comillas, debe calificar totalmente esa ruta de acceso al iniciar cualquier proceso que se encuentre en esa ubicación.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. De lo contrario, el sistema no encontrará la ruta de acceso.Otherwise, the system will not find the path. Por ejemplo, si c:\mypath no está en la ruta de acceso y lo agrega con comillas: path = %path%;"c:\mypath", debe calificar totalmente cualquier proceso en c:\mypath al iniciarlo.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Un proceso del sistema se identifica de forma única en el sistema por su identificador de proceso.A system process is uniquely identified on the system by its process identifier. Al igual que muchos recursos de Windows, un proceso también se identifica mediante su identificador, que podría no ser único en el equipo.Like many Windows resources, a process is also identified by its handle, which might not be unique on the computer. Un identificador es el término genérico para un identificador de un recurso.A handle is the generic term for an identifier of a resource. El sistema operativo conserva el identificador del proceso, al que se tiene acceso a través de la propiedad Handle del componente Process, incluso cuando el proceso ha salido.The operating system persists the process handle, which is accessed through the Handle property of the Process component, even when the process has exited. Por lo tanto, puede obtener la información administrativa del proceso, como el ExitCode (normalmente, cero para el correcto o un código de error distinto de cero) y el ExitTime.Thus, you can get the process's administrative information, such as the ExitCode (usually either zero for success or a nonzero error code) and the ExitTime. Los identificadores son recursos muy valiosos, por lo que la pérdida de identificadores es más virulent que la pérdida de memoria.Handles are an extremely valuable resource, so leaking handles is more virulent than leaking memory.

Nota

Esta clase contiene una petición de vínculo y una petición de herencia en el nivel de clase que se aplica a todos los miembros.This class contains a link demand and an inheritance demand at the class level that applies to all members. Se produce una SecurityException cuando el llamador inmediato o la clase derivada no tienen permiso de plena confianza.A SecurityException is thrown when either the immediate caller or the derived class does not have full-trust permission. Para más información sobre las demandas de seguridad, consulte peticiones de vínculo.For details about security demands, see Link Demands.

Notas de Núcleo de .NET.NET CoreNúcleo de .NET.NET Core Notes

En el .NET Framework, la clase Process utiliza de forma predeterminada Console codificaciones, que normalmente son codificaciones de páginas de códigos, para los flujos de entrada, salida y error.In the .NET Framework, the Process class by default uses Console encodings, which are typically code page encodings, for the input, output, and error streams. En el ejemplo de código, en los sistemas cuya referencia cultural es inglés (Estados Unidos), la página de códigos 437 es la codificación predeterminada para la clase Console.For example code, on systems whose culture is English (United States), code page 437 is the default encoding for the Console class. Sin embargo, Núcleo de .NET.NET Core puede hacer que solo esté disponible un subconjunto limitado de estas codificaciones.However, Núcleo de .NET.NET Core may make only a limited subset of these encodings available. En este caso, usa Encoding.UTF8 como codificación predeterminada.If this is the case, it uses Encoding.UTF8 as the default encoding.

Si un objeto de Process depende de codificaciones de páginas de códigos específicas, puede hacer que estén disponibles haciendo lo siguiente antes de llamar a los métodos de Process:If a Process object depends on specific code page encodings, you can still make them available by doing the following before you call any Process methods:

  1. Agregue una referencia al ensamblado System. Text. Encoding. webprojects. dll en el proyecto.Add a reference to the System.Text.Encoding.CodePages.dll assembly to your project.

  2. Recupere el objeto de EncodingProvider de la propiedad CodePagesEncodingProvider.Instance.Retrieve the EncodingProvider object from the CodePagesEncodingProvider.Instance property.

  3. Pase el objeto EncodingProvider al método Encoding.RegisterProvider para que las codificaciones adicionales admitidas por el proveedor de codificación estén disponibles.Pass the EncodingProvider object to the Encoding.RegisterProvider method to make the additional encodings supported by the encoding provider available.

La clase Process usará automáticamente la codificación predeterminada del sistema en lugar de UTF8, siempre que haya registrado el proveedor de codificación antes de llamar a los métodos de Process.The Process class will then automatically use the default system encoding rather than UTF8, provided that you have registered the encoding provider before calling any Process methods.

Constructores

Process()

Inicializa una nueva instancia de la clase Process.Initializes a new instance of the Process class.

Propiedades

BasePriority

Obtiene la prioridad base del proceso asociado.Gets the base priority of the associated process.

CanRaiseEvents

Obtiene un valor que indica si el componente puede generar un evento.Gets a value indicating whether the component can raise an event.

(Heredado de Component)
Container

Obtiene IContainer que contiene Component.Gets the IContainer that contains the Component.

(Heredado de Component)
DesignMode

Obtiene un valor que indica si Component está actualmente en modo de diseño.Gets a value that indicates whether the Component is currently in design mode.

(Heredado de Component)
EnableRaisingEvents

Obtiene o establece si el evento Exited debe provocarse cuando termine el proceso.Gets or sets whether the Exited event should be raised when the process terminates.

Events

Obtiene la lista de controladores de eventos asociados a Component.Gets the list of event handlers that are attached to this Component.

(Heredado de Component)
ExitCode

Obtiene el valor especificado por el proceso asociado al terminar.Gets the value that the associated process specified when it terminated.

ExitTime

Obtiene el momento en el que terminó el proceso asociado.Gets the time that the associated process exited.

Handle

Obtiene el identificador nativo del proceso asociado.Gets the native handle of the associated process.

HandleCount

Obtiene el número de identificadores abiertos por el proceso.Gets the number of handles opened by the process.

HasExited

Obtiene un valor que indica si el proceso asociado finalizó.Gets a value indicating whether the associated process has been terminated.

Id

Obtiene el identificador único del proceso asociado.Gets the unique identifier for the associated process.

MachineName

Obtiene el nombre del equipo en el que se está ejecutando el proceso asociado.Gets the name of the computer the associated process is running on.

MainModule

Obtiene el módulo principal del proceso asociado.Gets the main module for the associated process.

MainWindowHandle

Obtiene el identificador de ventana de la ventana principal del proceso asociado.Gets the window handle of the main window of the associated process.

MainWindowTitle

Obtiene el título de la ventana principal del proceso.Gets the caption of the main window of the process.

MaxWorkingSet

Obtiene o establece el tamaño del espacio de trabajo máximo permitido, en bytes, para el proceso asociado.Gets or sets the maximum allowable working set size, in bytes, for the associated process.

MinWorkingSet

Obtiene o establece el tamaño del espacio de trabajo mínimo permitido, en bytes, para el proceso asociado.Gets or sets the minimum allowable working set size, in bytes, for the associated process.

Modules

Obtiene los módulos cargados por el proceso asociado.Gets the modules that have been loaded by the associated process.

NonpagedSystemMemorySize

Obtiene el tamaño de la memoria no paginada del sistema en bytes que se asignó para el proceso asociado.Gets the amount of nonpaged system memory, in bytes, allocated for the associated process.

NonpagedSystemMemorySize64

Obtiene el tamaño de la memoria no paginada del sistema en bytes que se asignó para el proceso asociado.Gets the amount of nonpaged system memory, in bytes, allocated for the associated process.

PagedMemorySize

Obtiene el tamaño de la memoria paginada, en bytes, asignada para el proceso asociado.Gets the amount of paged memory, in bytes, allocated for the associated process.

PagedMemorySize64

Obtiene el tamaño de la memoria paginada, en bytes, asignada para el proceso asociado.Gets the amount of paged memory, in bytes, allocated for the associated process.

PagedSystemMemorySize

Obtiene el tamaño de la memoria paginable del sistema en bytes que se asignó para el proceso asociado.Gets the amount of pageable system memory, in bytes, allocated for the associated process.

PagedSystemMemorySize64

Obtiene el tamaño de la memoria paginable del sistema en bytes que se asignó para el proceso asociado.Gets the amount of pageable system memory, in bytes, allocated for the associated process.

PeakPagedMemorySize

Obtiene el tamaño de memoria máximo en el archivo de paginación de la memoria virtual, en bytes, que usa el proceso asociado.Gets the maximum amount of memory in the virtual memory paging file, in bytes, used by the associated process.

PeakPagedMemorySize64

Obtiene el tamaño de memoria máximo en el archivo de paginación de la memoria virtual, en bytes, que usa el proceso asociado.Gets the maximum amount of memory in the virtual memory paging file, in bytes, used by the associated process.

PeakVirtualMemorySize

Obtiene la cantidad máxima de la memoria virtual, en bytes que usa el proceso asociado.Gets the maximum amount of virtual memory, in bytes, used by the associated process.

PeakVirtualMemorySize64

Obtiene la cantidad máxima de la memoria virtual, en bytes que usa el proceso asociado.Gets the maximum amount of virtual memory, in bytes, used by the associated process.

PeakWorkingSet

Obtiene el tamaño de espacio de trabajo máximo para el proceso asociado, en bytes.Gets the peak working set size for the associated process, in bytes.

PeakWorkingSet64

Obtiene la cantidad máxima de la memoria física, en bytes que usa el proceso asociado.Gets the maximum amount of physical memory, in bytes, used by the associated process.

PriorityBoostEnabled

Obtiene o establece un valor que indica si el sistema operativo debería aumentar temporalmente la prioridad del proceso asociado cuando la ventana principal tenga el foco.Gets or sets a value indicating whether the associated process priority should temporarily be boosted by the operating system when the main window has the focus.

PriorityClass

Obtiene o establece la categoría de prioridad general del proceso asociado.Gets or sets the overall priority category for the associated process.

PrivateMemorySize

Obtiene el tamaño de memoria privada, en bytes, asignada para el proceso asociado.Gets the amount of private memory, in bytes, allocated for the associated process.

PrivateMemorySize64

Obtiene el tamaño de memoria privada, en bytes, asignada para el proceso asociado.Gets the amount of private memory, in bytes, allocated for the associated process.

PrivilegedProcessorTime

Obtiene el tiempo de procesador con privilegios de este proceso.Gets the privileged processor time for this process.

ProcessName

Obtiene el nombre del proceso.Gets the name of the process.

ProcessorAffinity

Obtiene o establece los procesadores en los que se puede programar la ejecución de los subprocesos de este proceso.Gets or sets the processors on which the threads in this process can be scheduled to run.

Responding

Obtiene un valor que indica si la interfaz de usuario del proceso está respondiendo.Gets a value indicating whether the user interface of the process is responding.

SafeHandle

Obtiene el identificador nativo de este proceso.Gets the native handle to this process.

SessionId

Obtiene el identificador de la sesión de Terminal Services para el proceso asociado.Gets the Terminal Services session identifier for the associated process.

Site

Obtiene o establece el ISite de Component.Gets or sets the ISite of the Component.

(Heredado de Component)
StandardError

Obtiene una secuencia que se usa para leer la salida de errores de la aplicación.Gets a stream used to read the error output of the application.

StandardInput

Obtiene una secuencia que se usa para escribir la entrada de la aplicación.Gets a stream used to write the input of the application.

StandardOutput

Obtiene una secuencia usada para leer la salida de texto de la aplicación.Gets a stream used to read the textual output of the application.

StartInfo

Obtiene o establece las propiedades que se pasan al método Start() de Process.Gets or sets the properties to pass to the Start() method of the Process.

StartTime

Obtiene el momento en el que se inició el proceso asociado.Gets the time that the associated process was started.

SynchronizingObject

Obtiene o establece el objeto usado para calcular las referencias de las llamadas del controlador de eventos emitidas como resultado de un evento de terminación del proceso.Gets or sets the object used to marshal the event handler calls that are issued as a result of a process exit event.

Threads

Obtiene el conjunto de subprocesos que se están ejecutando en el proceso asociado.Gets the set of threads that are running in the associated process.

TotalProcessorTime

Obtiene el tiempo de procesador total de este proceso.Gets the total processor time for this process.

UserProcessorTime

Obtiene el tiempo de procesador de usuario de este proceso.Gets the user processor time for this process.

VirtualMemorySize

Obtiene el tamaño de la memoria virtual del proceso en bytes.Gets the size of the process's virtual memory, in bytes.

VirtualMemorySize64

Obtiene la cantidad de la memoria virtual, en bytes, que se asignó para el proceso asociado.Gets the amount of the virtual memory, in bytes, allocated for the associated process.

WorkingSet

Obtiene el uso de memoria física del proceso asociado, en bytes.Gets the associated process's physical memory usage, in bytes.

WorkingSet64

Obtiene el tamaño de memoria física, expresado en bytes, que se asignó para el proceso asociado.Gets the amount of physical memory, in bytes, allocated for the associated process.

Métodos

BeginErrorReadLine()

Inicia las operaciones de lectura asincrónica en la secuencia de StandardError redirigida de la aplicación.Begins asynchronous read operations on the redirected StandardError stream of the application.

BeginOutputReadLine()

Inicia las operaciones de lectura asincrónica en la secuencia de StandardOutput redirigida de la aplicación.Begins asynchronous read operations on the redirected StandardOutput stream of the application.

CancelErrorRead()

Cancela la operación de lectura asincrónica en la secuencia redirigida de StandardError de una aplicación.Cancels the asynchronous read operation on the redirected StandardError stream of an application.

CancelOutputRead()

Cancela la operación de lectura asincrónica en la secuencia redirigida de StandardOutput de una aplicación.Cancels the asynchronous read operation on the redirected StandardOutput stream of an application.

Close()

Libera todos los recursos asociados a este componente.Frees all the resources that are associated with this component.

CloseMainWindow()

Cierra un proceso que contiene una interfaz de usuario mediante el envío de un mensaje de cierre a su ventana principal.Closes a process that has a user interface by sending a close message to its main window.

CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Heredado de MarshalByRefObject)
Dispose()
Dispose(Boolean)

Libera todos los recursos usados por este proceso.Release all resources used by this process.

EnterDebugMode()

Coloca un componente Process en estado de interacción con los procesos del sistema operativo que se ejecutan en un modo especial; para ello, habilita la propiedad nativa SeDebugPrivilege en el subproceso actual.Puts a Process component in state to interact with operating system processes that run in a special mode by enabling the native property SeDebugPrivilege on the current thread.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetCurrentProcess()

Obtiene un nuevo componente Process y lo asocia al proceso que está activo en ese momento.Gets a new Process component and associates it with the currently active process.

GetHashCode()

Sirve como función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
GetProcessById(Int32)

Devuelve un nuevo componente Process , dado un identificador de un proceso en el equipo local.Returns a new Process component, given the identifier of a process on the local computer.

GetProcessById(Int32, String)

Devuelve un nuevo componente Process , dados un identificador de proceso y el nombre de un equipo en la red.Returns a new Process component, given a process identifier and the name of a computer on the network.

GetProcesses()

Crea un nuevo componente Process para cada recurso de proceso del equipo local.Creates a new Process component for each process resource on the local computer.

GetProcesses(String)

Crea un nuevo componente Process para cada recurso de proceso en el equipo especificado.Creates a new Process component for each process resource on the specified computer.

GetProcessesByName(String)

Crea una matriz de nuevos componentes Process y los asocia a todos los recursos de proceso del equipo local que comparten el nombre de proceso especificado.Creates an array of new Process components and associates them with all the process resources on the local computer that share the specified process name.

GetProcessesByName(String, String)

Crea una matriz de nuevos componentes Process y los asocia a todos los recursos de proceso de un equipo remoto que comparten el nombre del proceso especificado.Creates an array of new Process components and associates them with all the process resources on a remote computer that share the specified process name.

GetService(Type)

Devuelve un objeto que representa el servicio suministrado por Component o por Container.Returns an object that represents a service provided by the Component or by its Container.

(Heredado de Component)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
InitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
Kill()

Detiene inmediatamente el proceso asociado.Immediately stops the associated process.

Kill(Boolean)

Detiene inmediatamente el proceso asociado y, opcionalmente, sus procesos secundarios o descendientes.Immediately stops the associated process, and optionally its child/descendent processes.

LeaveDebugMode()

Recupera un componente Process del estado que le permite interactuar con procesos del sistema operativo que se ejecuten en un modo especial.Takes a Process component out of the state that lets it interact with operating system processes that run in a special mode.

MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.Creates a shallow copy of the current MarshalByRefObject object.

(Heredado de MarshalByRefObject)
OnExited()

Inicia el evento Exited.Raises the Exited event.

Refresh()

Descarta cualquier información acerca del proceso asociado que se haya almacenado en caché en el componente del proceso.Discards any information about the associated process that has been cached inside the process component.

Start()

Inicia (o vuelve a usar) el recurso de proceso especificado en la propiedad StartInfo de este componente Process y lo asocia al componente.Starts (or reuses) the process resource that is specified by the StartInfo property of this Process component and associates it with the component.

Start(ProcessStartInfo)

Inicia el recurso de proceso que se especifica mediante el parámetro que contiene la información de inicio del proceso (por ejemplo, el nombre de archivo del proceso que se va a iniciar) y asocia el recurso a un nuevo componente Process .Starts the process resource that is specified by the parameter containing process start information (for example, the file name of the process to start) and associates the resource with a new Process component.

Start(String)

Inicia un recurso de proceso con la especificación del nombre de un documento o de un archivo de aplicación y asocia el recurso a un nuevo componente Process .Starts a process resource by specifying the name of a document or application file and associates the resource with a new Process component.

Start(String, String)

Inicia un recurso de proceso mediante la especificación del nombre de una aplicación y un conjunto de argumentos de línea de comandos, y asocia el recurso a un nuevo componente Process .Starts a process resource by specifying the name of an application and a set of command-line arguments, and associates the resource with a new Process component.

Start(String, String, SecureString, String)

Inicia un recurso de proceso mediante la especificación del nombre de una aplicación, un nombre de usuario, una contraseña y un dominio, y asocia el recurso a un nuevo componente de Process .Starts a process resource by specifying the name of an application, a user name, a password, and a domain and associates the resource with a new Process component.

Start(String, String, String, SecureString, String)

Inicia un recurso de proceso mediante la especificación del nombre de una aplicación y un conjunto de argumentos de línea de comandos, un nombre de usuario, una contraseña y un dominio, y asocia el recurso a un nuevo componente de Process .Starts a process resource by specifying the name of an application, a set of command-line arguments, a user name, a password, and a domain and associates the resource with a new Process component.

ToString()

Aplica formato de cadena al nombre del proceso, combinándolo con el tipo de componente principal, si es aplicable.Formats the process's name as a string, combined with the parent component type, if applicable.

WaitForExit()

Indica al componente Process que espere indefinidamente hasta que el proceso asociado termine.Instructs the Process component to wait indefinitely for the associated process to exit.

WaitForExit(Int32)

Indica al componente Process que espere a que el proceso asociado termine durante el número de milisegundos especificado.Instructs the Process component to wait the specified number of milliseconds for the associated process to exit.

WaitForInputIdle()

Hace que el componente Process espere indefinidamente a que el proceso asociado entre en estado de inactividad.Causes the Process component to wait indefinitely for the associated process to enter an idle state. Esta sobrecarga solo se aplica a los procesos que tengan una interfaz de usuario y, por tanto, un bucle de mensajes.This overload applies only to processes with a user interface and, therefore, a message loop.

WaitForInputIdle(Int32)

Hace que el componente Process espere a que el proceso asociado entre en estado de inactividad durante el número de milisegundos especificado.Causes the Process component to wait the specified number of milliseconds for the associated process to enter an idle state. Esta sobrecarga solo se aplica a los procesos que tengan una interfaz de usuario y, por tanto, un bucle de mensajes.This overload applies only to processes with a user interface and, therefore, a message loop.

Eventos

Disposed

Se produce cuando el componente se elimina mediante una llamada al método Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Heredado de Component)
ErrorDataReceived

Se produce cuando una aplicación escribe en su secuencia redirigida de StandardError .Occurs when an application writes to its redirected StandardError stream.

Exited

Se produce cuando termina un proceso.Occurs when a process exits.

OutputDataReceived

Se produce cada vez que una aplicación escribe una línea en su secuencia StandardOutput redirigida.Occurs each time an application writes a line to its redirected StandardOutput stream.

Se aplica a

Consulte también: