Export (0) Print
Expand All

Process.GetCurrentProcess Method

Gets a new Process component and associates it with the currently active process.

[Visual Basic]
Public Shared Function GetCurrentProcess() As Process
[C#]
public static Process GetCurrentProcess();
[C++]
public: static Process* GetCurrentProcess();
[JScript]
public static function GetCurrentProcess() : Process;

Return Value

A new Process component associated with the process resource that is running the calling application.

Remarks

Use this method to create a new Process instance and associate it with the process resource on the local computer.

Like the similar GetProcessById, GetProcessesByName, and GetProcesses methods, GetCurrentProcess associates an existing resource with a new Process component.

Example

[Visual Basic, C#, C++] The following example retrieves information of the current process, all instances of Notepad running on the local computer, all instances of Notepad running on a specific computer using the computer alias and an IP address, all processes running on the local computer and a remote computer, a specific process on the local computer or a remote computer using the process id.

[Visual Basic] 
Imports System
Imports System.Diagnostics
Imports System.ComponentModel


Namespace MyProcessSample
    _
   '/ <summary>
   '/ Shell for the sample.
   '/ </summary>
   Public Class MyProcess
      
      
      
      
      Public Sub BindToRunningProcesses()
         ' Get the current process.
         Dim currentProcess As Process = Process.GetCurrentProcess()
         
         
         ' Get all instances of Notepad running on the local
         ' computer.
         Dim localByName As Process() = Process.GetProcessesByName("notepad")
         
         
         ' Get all instances of Notepad running on the specifiec
         ' computer.
         ' 1. Using the computer alias (do not precede with "\\").
         Dim remoteByName As Process() = Process.GetProcessesByName("notepad", "myComputer")
         
         ' 2. Using an IP address to specify the machineName parameter. 
         Dim ipByName As Process() = Process.GetProcessesByName("notepad", "169.0.0.0")
         
         
         ' Get all processes running on the local computer.
         Dim localAll As Process() = Process.GetProcesses()
         
         
         ' Get all processes running on the remote computer.
         Dim remoteAll As Process() = Process.GetProcesses("myComputer")
         
         
         ' Get a process on the local computer, using the process id.
         Dim localById As Process = Process.GetProcessById(1234)
         
         
         ' Get a process on a remote computer, using the process id.
         Dim remoteById As Process = Process.GetProcessById(2345, "myComputer")
      End Sub 'BindToRunningProcesses
       
      
      
      
      Public Shared Sub Main()
         
         Dim myProcess As New MyProcess()
         
         
         myProcess.BindToRunningProcesses()
      End Sub 'Main 
   End Class 'MyProcess
End Namespace 'MyProcessSample

[C#] 
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    /// <summary>
    /// Shell for the sample.
    /// </summary>
    public class MyProcess
    {
        
       
        
        public void BindToRunningProcesses()
        {
            // Get the current process.
            Process currentProcess = Process.GetCurrentProcess();

            
            // Get all instances of Notepad running on the local
            // computer.
            Process [] localByName = Process.GetProcessesByName("notepad");

            
            // Get all instances of Notepad running on the specifiec
            // computer.
            // 1. Using the computer alias (do not precede with "\\").
            Process [] remoteByName = Process.GetProcessesByName("notepad", "myComputer");
            
            // 2. Using an IP address to specify the machineName parameter. 
            Process [] ipByName = Process.GetProcessesByName("notepad", "169.0.0.0");
            
            
            // Get all processes running on the local computer.
            Process [] localAll = Process.GetProcesses();

            
            // Get all processes running on the remote computer.
            Process [] remoteAll = Process.GetProcesses("myComputer");

            
            // Get a process on the local computer, using the process id.
            Process localById = Process.GetProcessById(1234);

            
            // Get a process on a remote computer, using the process id.
            Process remoteById = Process.GetProcessById(2345, "myComputer");
            
        }
        


        public static void Main()
        {
                
                   MyProcess myProcess = new MyProcess();
            

            myProcess.BindToRunningProcesses();

            }    
    }
}

[C++] 
#using <mscorlib.dll>
#using <System.dll>

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

int main() {
    // Get the current process.
    Process* currentProcess = Process::GetCurrentProcess();

    // Get all instances of Notepad running on the local
    // computer.
    Process* localByName[] = Process::GetProcessesByName(S"notepad");

    // Get all instances of Notepad running on the specific
    // computer.
    // 1. Using the computer alias (do not precede with "\\").
    Process* remoteByName[] = Process::GetProcessesByName(S"notepad", S"myComputer");

    // 2. Using an IP address to specify the machineName parameter. 
    Process* ipByName[] = Process::GetProcessesByName(S"notepad", S"169.0.0.0");

    // Get all processes running on the local computer.
    Process* localAll[] = Process::GetProcesses();

    // Get all processes running on the remote computer.
    Process* remoteAll[] = Process::GetProcesses(S"myComputer");

    // Get a process on the local computer, using the process id.
    Process* localById = Process::GetProcessById(1234);

    // Get a process on a remote computer, using the process id.
    Process* remoteById = Process::GetProcessById(2345, S"myComputer");
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

.NET Framework Security: 

See Also

Process Class | Process Members | System.Diagnostics Namespace | GetProcessById | GetProcessesByName | GetProcesses

Show:
© 2014 Microsoft