如何通过PID和线程ID查找Windows服务?

杰克·米勒

在我的C#应用​​程序中,我具有Windows服务的PID和threadID。我如何找到它是哪个服务(请注意:例如,svchost.exe的单个实例可以托管多个服务)?直接用C#或调用其他实用程序对我来说都很好。

Process Hacker可以显示服务名称(进程的属性->选项卡线程->列服务)。

到目前为止,我已经找到了进程以及线程:

var p = Process.GetProcessById(pid);
var t = p.Threads.Cast<ProcessThread>().SingleOrDefault(t => t.Id == threadId);

怎么继续?备择方案?

哈里·约翰斯顿

通常,您不能这样做。线程与服务之间没有1:1的关系。单个线程可以运行多个服务,而单个服务可以(通常确实)具有多个线程。

Process Hacker可能使用某种启发式方法,例如,跟踪线程的调用堆栈并标识svchost.exe正在运行的DLL 又或者,它假定线程与调用ServiceMain()的线程相同;可能存在一种未记录的识别该方法的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过已知的PID / TID获得JVM线程名称/ ID

来自分类Dev

如何通过已知的PID / TID获取JVM线程名称/ ID

来自分类Dev

给定其子线程的线程ID,如何查找进程的pid?

来自分类Dev

通过服务名称获取Windows服务的PID

来自分类Dev

Android服务和线程ID

来自分类Dev

如何通过Python查找进程的pid?

来自分类Dev

通过线程ID查找进程

来自分类Dev

如何使用WinDBG关键部分和线程列表查找线程ID?

来自分类Dev

通过slug和id查找

来自分类Dev

如何使用Powershell查找,停止和禁用Windows服务

来自分类Dev

如何获得线程的PID?

来自分类Dev

如何在Htop中通过pid查找特定进程

来自分类Dev

获取Windows服务的PID

来自分类Dev

如何编写Shell脚本以查找PID和Kill

来自分类Dev

如何通过接口名称查找合同ID?

来自分类Dev

如何通过ID /标签/ ...查找弹出窗口?

来自分类Dev

如何通过ID /标签/ ...查找弹出窗口?

来自分类Dev

如何正确命名用于通过ID和名称查找实体的REST方法?

来自分类Dev

如何使用MongoDB,Node和Monk通过字符串ID查找?

来自分类Dev

如何查找Windows服务的.NET版本?

来自分类Dev

jQuery通过带空格和通过变量的ID查找元素

来自分类Dev

如何通过其服务名称和脚本来获取进程ID到变量

来自分类Dev

Windows Embedded Compact 7服务和线程本地存储

来自分类Dev

如何通过lodash通过id查找我的对象?

来自分类Dev

如何访问以下数组中的ID和pID?

来自分类Dev

如何通过VB脚本启动Windows服务?

来自分类Dev

通过PID查找进程名称

来自分类Dev

如何通过实体内的注入服务访问查找数据?

来自分类Dev

通过ID和时间在R中进行简单查找

Related 相关文章

热门标签

归档