本文介绍了确定控制台应用程序是从命令行运行还是从Powershell运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何确定控制台应用程序是从Powershell运行还是从应用程序内部的标准命令行运行?
How do I determine whether a console application is being run from Powershell or the standard command line from within the application?
推荐答案类似这样的检查可能比检查窗口标题更可靠:
Something like this might be more reliable than checking the window title:
using System; using System.Diagnostics; Process p = Process.GetCurrentProcess(); PerformanceCounter parent = new PerformanceCounter("Process", "Creating Process ID", p.ProcessName); int ppid = (int)parent.NextValue(); if (Process.GetProcessById(ppid).ProcessName == "powershell") { Console.WriteLine("running in PowerShell"); } else { Console.WriteLine("not running in PowerShell"); }[源]
更多推荐
确定控制台应用程序是从命令行运行还是从Powershell运行
发布评论