当前位置:首页 > 技术积累 > 正文内容

C#中如何获取父进程ID

竹林之风9个月前 (11-30)技术积累2027

        在C#中,可以使用System.Diagnostics命名空间来获取父进程的ID。下面是一个示例代码:

using System;
using System.Diagnostics;

class Program
{
    static void Main()
    {
        int parentId = GetParentProcessId();
        Console.WriteLine("Parent Process ID: " + parentId);
    }

    static int GetParentProcessId()
    {
        int parentId = -1;
        try
        {
            Process currentProcess = Process.GetCurrentProcess();
            parentId = currentProcess.Parent().Id;
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
        return parentId;
    }
}

public static class ProcessExtensions
{
    public static Process Parent(this Process process)
    {
        try
        {
            using (ManagementObject managementObject = new ManagementObject($"win32_process.handle='{process.Id}'"))
            {
                managementObject.Get();
                int parentId = Convert.ToInt32(managementObject["ParentProcessId"]);
                return Process.GetProcessById(parentId);
            }
        }
        catch
        {
            return null;
        }
    }
}

        这个例子中,GetParentProcessId方法使用System.Management命名空间获取当前进程的父进程ID。注意需要引用System.Management程序集。

扫描二维码推送至手机访问。

版权声明:本文由久爱编程网发布,如需转载请注明出处。

本文链接:https://www.9icode.com/index.php/post/379.html

分享给朋友:

“C#中如何获取父进程ID” 的相关文章

小试Git源码版本控制

小试Git源码版本控制

        我们一个人开发或维护一个项目的时候,一般项目源码放在自己的电脑上就可以了;当加入新成员和我们一起开发或维护的时候,如果还是按照这样的方式放置源码...

实现网页原路返回:从哪个页面跳转过来就返回哪个页面

实现网页原路返回:从哪个页面跳转过来就返回哪个页面

一、需求        导航对于PC网站或WAP网站有着相当重要的作用,它有利于提升用户体验,不至于让用户迷路。而“返回”就是导航的功能之一,主要体现在WAP网...

HTTP长连接与短连接、长轮询与短轮询及长轮询的实现概述

HTTP长连接与短连接、长轮询与短轮询及长轮询的实现概述

        HTTP长连接(long connection)与短连接(short connection)本质上是TCP长连接和短连接:短连接是指在一次HTTP请求和响应之后立即关闭本次TCP连接,...

Android开发从新手开始(一)——概述

Android开发从新手开始(一)——概述

前言        做为一个程序员,不应该将自己限定在自己熟悉的平台和语言上,而也应该多去了解一下其它平台和语言。这样可以吸取各个平台和语言的思想,提升自己解决...

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几...

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常,是因为设置Response的StatusCode之前,程序已设置响应标头。可从以...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。