首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从C# (Windows Services)跟踪和停止cmd中运行的应用程序

从C# (Windows Services)跟踪和停止cmd中运行的应用程序,可以通过以下步骤实现:

  1. 使用C#编写一个Windows服务程序,可以通过System.Diagnostics命名空间中的Process类来执行cmd命令,并获取cmd命令的输出结果。
  2. 在Windows服务程序中,使用Process类的Start方法启动cmd.exe,并传入要执行的应用程序路径和参数。
  3. 使用Process类的StandardOutput属性获取cmd命令的输出结果,可以通过读取StandardOutput的流来获取应用程序的输出信息。
  4. 如果需要跟踪应用程序的运行状态,可以使用Process类的Exited事件来监听应用程序的退出事件,并进行相应的处理。
  5. 如果需要停止正在运行的应用程序,可以使用Process类的Kill方法来终止应用程序的运行。

下面是一个示例代码:

代码语言:txt
复制
using System;
using System.Diagnostics;

namespace WindowsServiceExample
{
    public class MyService
    {
        private Process cmdProcess;

        public void Start()
        {
            cmdProcess = new Process();
            cmdProcess.StartInfo.FileName = "cmd.exe";
            cmdProcess.StartInfo.Arguments = "/C <your_application_path> <your_application_arguments>";
            cmdProcess.StartInfo.UseShellExecute = false;
            cmdProcess.StartInfo.RedirectStandardOutput = true;
            cmdProcess.OutputDataReceived += CmdOutputDataReceived;
            cmdProcess.EnableRaisingEvents = true;
            cmdProcess.Exited += CmdExited;

            cmdProcess.Start();
            cmdProcess.BeginOutputReadLine();
        }

        private void CmdOutputDataReceived(object sender, DataReceivedEventArgs e)
        {
            // 处理cmd命令的输出结果
            if (!string.IsNullOrEmpty(e.Data))
            {
                Console.WriteLine(e.Data);
            }
        }

        private void CmdExited(object sender, EventArgs e)
        {
            // 处理应用程序退出事件
            // 可以在这里进行一些清理操作
        }

        public void Stop()
        {
            if (cmdProcess != null && !cmdProcess.HasExited)
            {
                cmdProcess.Kill();
                cmdProcess.Dispose();
            }
        }
    }
}

在上述示例代码中,<your_application_path>是要执行的应用程序的路径,<your_application_arguments>是应用程序的参数。你可以根据实际情况修改这两个值。

这个示例代码演示了如何通过C#的Windows服务程序来跟踪和停止cmd中运行的应用程序。你可以根据自己的需求进行修改和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET Core | 笔记

: .net core插件框架 如何在 .NET Core 中使用调试程序集可卸载性 | Microsoft Docs 使用插件创建 .NET Core 应用程序 - .NET | Microsoft...Docs 如何在 .NET Core 中使用调试程序集可卸载性 | Microsoft Docs dotnetcore/Natasha: 基于 Roslyn C# 动态程序集构建库,该库允许开发者在运行时使用...参考: C#在窗体程序运行控制台程序并管理其进程_madonghyu博客-CSDN博客_c#调用进程之后管理 public void FrpStart() { if (p !...StartInfo = { //调用程序名称,比如windowscmd,linux下sh或者bash,即这里要填写控制台程序路径...看这里 - 老张哲学 - 博客园 使用 .net core 自定义项目模板_沐雪大神-CSDN博客 JavaScript 拦截请求 参考: 使用 JavaScript 拦截跟踪浏览器 HTTP

4.6K20

C#创建一个Window服务

Window服务介绍 Microsoft Windows 服务能够创建在它们自己 Windows 会话可长时间运行可执行应用程序。...这些服务可以在计算机启动时自动启动,可以暂停重新启动而且不显示任何用户界面。这使服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作其他用户,需要长时间运行功能时使用。...还可以在不同于登录用户特定用户帐户或默认计算机帐户安全上下文中运行服务。...本文就向大家介绍如何运用Visual C#来一步一步创建一个文件监视Windows服务程序,然后介绍如何安装、测试调试该Windows服务程序。 1.创建window服务 ?...2.写一个桌面应用程序管理服务 最终我们希望window服务应该在service.msc存在 ? 编写一个winform就放4个按钮 ?

60730

引脚数据提示编辑代码并继续调试(C#,VB,C ++)编辑XAML代码并继续调试调试难以重现问题配置数据以显示在调试器更改执行流程跟踪范围外对象(C#,Visual Basic)查看函数返回值

然后,使用F5或step命令继续运行应用程序。 通过更改执行流程,您可以执行诸如测试不同代码执行路径或重新运行代码之类操作,而无需重新启动调试器。...移动指针不能将您应用恢复到较早应用状态。 跟踪范围外对象(C#,Visual Basic) 使用诸如“监视”窗口之类调试器窗口可以轻松查看变量。...您可以通过在“监视”窗口中为其创建对象ID来跟踪变量。 创建对象ID 在要跟踪变量附近设置一个断点。 启动调试器(F5)并在断点处停止。...更加熟悉调试器如何附加到您应用程序C#,C ++,Visual Basic,F#) 要附加到正在运行应用程序,调试器将加载与要调试应用程序完全相同内部版本生成符号(.pdb)文件。...要了解调试器如何将代码分类为用户代码,请参见Just My Code。要查找有关符号文件更多信息,请参见Visual Studio调试器指定符号(.pdb)源文件。

4.5K41

werfault.exe出现原因与解决办法以及werfault.exe 该内存不能为written如何解决?

大家好,又见面了,我是你们朋友全栈君。 Windows用户总会抱怨WerFault.exe应用程序保存,本文给您讲解为何会出现这种进行问题以及如何修复? 一、WerFault.exe是什么?...WerFault.exe可执行文件是自动错误收集,生成日志错误报告并将其发送给Microsoft支持系统包含内置Windows系统应用程序之一。...Windows错误报告服务(WerSvc)在后台运行,并监视Windows正在运行应用程序状态。...由于WerFault.exe是系统文件,因此用户无法计算机上将其删除,以停止出现错误“ WerFault.exe应用程序错误”。 如果您遇到终止Werfault.exe进程仅一次问题,请不要注意。...1、打开服务管理控制台-services.msc; 2、在服务列表,找到Windows错误报告服务并打开其属性。

3.2K30

win7下运行exe失败:应用程序无法启动,因为应用程序并行配置不正确

win7下运行exe失败:应用程序无法启动,因为应用程序并行配置不正确 1.问题描述 承接了一个项目,给甲方交接时候,在它电脑中运行出现了这个错误。...3.问题依然存在 出现这样错误是因为系统缺少某些运行库,用sxstrace工具可以看究竟,用法: 管理员运行cmd ,输入:SxsTrace Trace -logfile:SxsTrace.etl,启动跟踪...下面是我运行情况: C:\Windows\system32SxsTrace Trace -logfile:SxsTrace.etl 已启动跟踪。...按 Enter 停止跟踪… C:\Windows\system32>SxsTrace Parse -logfile:SxsTrace.etl -outfile:SxsTrace.txt 正在分析日志文件...安装visual studio 2008 C++开发工具后,就可以运行了。

21K31

(3)Powershell基础知识(一)

输出结果,可以看到可以获取指定service,新建新service,重启,设置service一些状态,启动,停止等操作。...右命令行很容易过度到脚本 使用 Windows PowerShell,可以很方便地以交互方式键入命令过渡到创建和运行脚本。...可以创建在 Cmd.exe 运行外部命令行工具,但这些外部工具不能提供服务(例如帮助集成),而且 Cmd.exe 不能自动识别它们是否是有效命令。...Windows Powershell使用某些C#语法 由于 PowerShell 基于 .NET Framework,因此 PowerShell 语法功能关键字与 C# 编程语言中所使用语法功能关键字十分类似...这些命令有不同名称,它们可能属于或不属于一个系列。例如,在 Windows 系统上可以使用 net start net stop 命令来启动停止服务。

4.1K20

windowServer_windowsserver是什么

WAS 托管应用程序提供面向服务体系结构 (SOA) 所需多种功能,例如: 基于消息应用程序激活,允许应用程序动态启动停止以响应传入消息。...使用 AppFabric,可以各种源收集关联事件,以提供运行进程执行整体情况。...应用程序监控   除了简化托管服务部署、管理配置,AppFabric 托管服务通过捕获运行时发出跟踪信息并将其存储到监控数据库,使监控应用程序更为简单。...应用程序收集信息可通过使用跟踪配置文件来进行自定义,使用跟踪配置文件可以捕获信息,例如活动状态(启动、停止错误)、工作流内特定变量内容或者应用程序通过使用自定义跟踪记录发出自定义跟踪信息。...应用程序根据使用 HTTP 非 HTTP 网络协议到达传入工作项目动态进行启动停止。* 强大应用程序工作进程回收,维护运行应用程序运行状况。 集中式应用程序配置管理。

1.8K100

常规安全检查阶段 | Windows 应急响应

运行(Running):任务当前正在执行。 已停止(Stopped):任务已经停止,不再执行。 禁用(Disabled):任务已被禁用,不会触发执行。 活动任务指的是当前正在运行计划任务。...MS一些语言,例如C#、VB、F#,都是在 CLR 运行,所以可以将CLR理解为他们运行环境。...应用程序日志 包含由应用程序或系统程序记录事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志记录文件错误,程序开发人员可以自行决定监视哪些事件。...、文件创建相关信息,同时收集或SIEM代理收集它生成事件并随后对其进行分析,可以识别恶意或异常活动,并了解入侵者恶意软件如何在用户网络上运行。...服务是在Microsoft Windows操作系统运行后台应用程序

47410

Windows服务小结 2

如何安装一个Windows服务? 如何卸载一个Windows服务? 如何使用参数控制服务运行方式? 本文主要讨论上面三个问题。...因为在我们开发完一个服务之后,我们需要把它安装在不同环境,以及如何卸载它。 在某些时候,我们还想快速运行调试一下程序。这些都是我们开发人员所面临问题,通过本文,我们就会知道这些答案。...运行结果如下: ? 打开Services窗口,我们就可以在服务列表里面找到刚刚创建MyService服务了,我们可以启动停止服务。...,自动服务列表删除。...对于cmd命令行语句,我们可以保存在uninstall.bat文件里面,然后提交到git管理。 如何使用参数控制服务运行方式?

44130

使用C#创建Windows服务

一、开发环境 操作系统:Windows 10 X64 开发环境:VS2015 编程语言:C# .NET版本:.NET Framework 4.0 目标平台:X86 二、创建Windows Service...三、创建安装、启动、停止、卸载服务Windows窗体 1、在同一个解决方案里新建一个Windows Form项目,并命名为WindowsServiceClient,如下图所示: ?...8、重新打开后,在IDE运行WindowsServiceClient项目; 9、使用WIN+R方式打开运行窗体,并在窗体内输入services.msc后打开服务,如下图所示: ?...12、点击“停止服务”按钮,将会停止运行服务,如下图所示: ? 13、点击“卸载服务”按钮,将会服务删除MyService服务。...源代码下载: http://pan.baidu.com/s/1kVza3Bp 补充:如何调试服务 1、要调试服务,其实很简单,如需将服务附加进程到需要调试项目里面即可,假如要调试刚才建服务,现在

1.5K00

c#创建Windows服务

在这里,我将在c# . net解释Windows服务。 1、Windows服务介绍。 2、如何c# . net创建Windows服务。...介绍 Windows服务通常在操作系统OS启动并在后台运行应用程序时启动。Windows服务在自己会话执行应用程序。它可以自动启动,也可以手动暂停、停止重新启动。...步骤2 进入Visual c# ->“Windows Desktop””->“Windows Service”,给你项目一个合适名字,然后点击OK ?...步骤9:重新编译应用程序 右键单击您项目或解决方案并选择Rebuild。 ? 第十步 以管理员运行方式打开命令行: ? 步骤11 在命令提示符启动下面的命令并按Enter。...输入services.msc 找到你服务。 ? ? ? 服务输出: ? 将在您bin文件夹创建一个日志文件夹。 如果您想卸载服务,请启动下面的命令。

4.1K20

WCF系列教程之WCF服务宿主与WCF服务部署

一、简介 任何一个程序运行都需要依赖一个确定进程,WCF也不例外。...如果我们需要使用WCF服务,那么我们就必须将服务寄宿与创建它并控制它上下文生存期运行时环境当中,承载服务环境,称之为宿主。WCF服务可以在支持托管代码任意Windows进程运行。...这使服务变得容易调试,从中跟踪信息以查明应用程序内发生情况变得更加方便,以及通过将其复制到新位置进行来回移动变得更加轻松。 ...通过使服务 ServiceBase 类以及 WCF 服务协定接口继承,将该服务同时实现为 Windows 服务 WCF 服务。...在未激活消息安全环境,由托管 Windows 服务宿主选项启用方案是承载于 IIS 之外、长时间运行 WCF 服务方案。 服务生存期改由操作系统控制。

1.2K80

一文搞定SonarQube接入C#(.NET)代码质量分析

Sonar+命令行分析C#代码 1、打开CMD,切换到指定项目根目录,必须.sln或者.csproj同级目录。...4、分析C#扫描结果,将分析报告上传给SonarQube,CMD命令下运行: SonarScanner.MSBuild.exe end 执行结果如下图所示: ?...Jenkins+Sonar+MSBuild分析C#代码 1、编译.NET(C#应用程序可通过微软提供MSBuild工具,先安装插件MSBuild,在Jenkins搜索并安装MSBuild插件,如下图所示...4、由于示例Jenkins服务是部署在Linux系统,故此处可添加一台Windows主机(10.0.0.148)作为C#项目编译运行环境,在Windows节点配置,添加并配置相应工具,如下图所示...解决方法: 登录节点10.0.0.148(windows主机),右击我电脑选择管理然后管理界面里面找到服务或者在cmd界面输入services.msc打开服务管理界面,服务管理界面找到jenkins

4.6K31

远程桌面服务影子 – 超越影子会话

此外,还有两个 GUI 应用程序,它们执行相同操作:自 Windows Server 2003 以来就存在终端服务管理(TSAdmin) 作为远程服务器管理工​​具 (RSAT) 一部分远程桌面服务管理器...另一种无需在弹出窗口中不断输入即可指定用户凭据方法是使用以下runas命令: runas /netonly /noprofile /user:{USERNAME} cmd 并在新命令行解释器窗口中运行该...其中两个如下: 读取fDenyTSConnections键值 svchost 进程第一个堆栈跟踪 读取fDenyTSConnections键值 svchost 进程第二个堆栈跟踪 在第一个堆栈...CRemoteConnectionManager::Start第二个堆栈跟踪现有调用表明它运行远程连接管理器。...此外,正如我在第 4 节已经写过,只有一部分 RDP 服务必须运行,因此您可以停止禁用其余服务,而不会对 RDP 功能产生任何影响(以防有人决定将其关闭稍后)并保持 RDS 阴影工作。

4.7K40

详解ElasticAPM实现微服务链路追踪(NET)

如果运行Windows XP,则可能需要下载并安装 PowerShell。 5. PowerShell 提示符处,运行以下命令以将 APM Server 安装为 Windows 服务。...然后在弹出页面输入Y,然后回车。 注意:如果您系统禁用了脚本执行,则需要为当前会话设置执行策略,以允许脚本运行。...点击Test1,这是配置ApmAgent项目,界面如下。 可以看到,他已经在检测我网站访问吞吐量等等信息了。 点击【指标】,还有CPU内存统计。...点击【事务】,这里【时间线】就有我们请求链路跟踪,即微服务所需链路跟踪功能。...结语 如果一个公司存在Java团队C#团队,我们在使用APM时候,强烈建议使用ELK,因为大家都统一使用一个工具交流很方便,可以避免非常非常非常多不必要麻烦。

89630

dotnet conf 2023 Agenda

在整个堆栈运行时到库、SDK 工具,再到服务,.NET Azure 使构建智能应用过程更加高效。...了解如何使用 Azure Kubernetes 服务 Azure 容器应用在 Azure 运行云原生无服务器容器应用程序。我们帮助您为您应用程序选择合适服务。...在 .NET 8 ,开发人员现在可以选择使用 HostOptions 新属性为已注册托管服务启用并发启动/或停止行为。这允许服务同时启动停止,从而可能缩短应用程序启动关闭时间。...本次会议将演示 Avalonia UI 如何使您能够创建在 Windows、macOS、Linux、iOS、Android WebAssembly 上无缝运行时尚现代应用程序。...在 .Net 8 ,互操作团队创建了一个源生成器,使你能够轻松地运行内置 COM 互操作 IUnknown 接口过渡到更易于调试、审核自定义跨平台 C# 代码,所有这些都不会损失性能。

33240

ASP.NET Core 3.0 新增功能

Blazor WebAssembly (预览) Blazor 应用程序也可以使用基于 WebAssembly .NET 运行时直接在浏览器运行。...Blazor 组件通常使用 Razor 语法编写,它是 HTML C# 自然融合。...} 主机要求: Windows 主机必须将服务主体名称 (SPN) 添加到承载该应用程序用户账户。 Linux macOS 主机必须加入域。 必须为 Web 进程创建 SPN。...IIS 改进了错误报告 现在,在 IIS 托管 ASP.NET Core 应用程序启动错误会生成更丰富诊断数据。这些错误会在适用情况下使用堆栈跟踪,报告给 Windows 事件日志。...有关更多信息,请参见: 作为 Windows 服务运行 .NET Core 辅助角色 (.NET Core Workers as Windows Services) 在 ASP.NET Core 中使用托管服务实现后台任务

6.7K30

ASP.NET各命名空间及作用

Microsoft.Vsa  包含使您可以将 .NET Framework 脚本引擎脚本集成到应用程序以及在运行时编译执行代码接口。 ...System.Data.SqlServerCE  描述可用于在托管环境下基于 Windows CE 设备访问 SQL Server CE 数据库类集合。...System.ServiceProcess  提供使您可以实现、安装控制 Windows 服务应用程序类。服务是不需要用户界面长期运行可执行文件。...实现服务过程包括: ServiceBase 类继承,定义在传入启动、停止、暂停继续命令时处理特定行为,以及定义当系统关闭时所采取自定义行为操作。 ...System.Windows.Forms  包含用于创建基于 Windows 应用程序类,这些应用程序可以充分利用 Microsoft Windows 操作系统丰富用户界面功能。

3.1K10

Visual Studio 调试系列9 调试器提示技巧

04 配置要在调试器显示数据 有关C#,Visual Basic C++(C++仅 /CLI 代码),可以让调试程序要使用下列选项显示信息DebuggerDisplay属性。...10 调试死锁争用条件 如果需要调试问题对于多线程应用程序很常见,在调试时查看线程位置,通常会有所帮助。 可使用源显示线程按钮轻松完成此操作。 ?...11 检查 web 服务网络资源 (UWP) 有效负载 在 UWP 应用,你可以分析使用 Windows.Web.Http API执行网络操作。...在应用,浏览使用 Windows.Web.Http 应用场景,然后选择 停止收集 生成报表。 ? 在摘要视图中选择一个操作,查看更多详细信息。 ? 有关详细信息,请参阅网络使用情况。...12 将调试器附加到您应用程序 若要附加到正在运行应用,调试器将加载为想要调试应用相同内部版本生成符号 (.pdb) 文件。 在某些情况下,了解符号文件一些知识非常有用。

3.1K10
领券