首页 新闻 会员 周边

C# 暂停、恢复外部程序里的线程【外部程序】

0
悬赏园豆:100 [待解决问题]

我想做一个工具类似XueTr一样,可以列出说有进程,然后单击进程查看所有线程,这一步做到了,下面就是怎么暂停单击进程显示出来的线程,也就是怎么暂停和恢复某个进程下的线程。 

小弟将仅有的100分贡献出来

求大神们指点, 小弟在线等回复...

C#
我的伙伴的主页 我的伙伴 | 初学一级 | 园豆:7
提问于:2013-09-05 13:24
< >
分享
所有回答(8)
0

少年,放弃吧,进程可以列出  线程可以列出,就暂停,挂起, 是C#做不来的。不用在线等了,下线学C++吧

键盘上的牛仔 | 园豆:30 (初学一级) | 2013-09-05 13:45

好吧, 谢谢你了, 我翻阅了半天也没有找到相关资料, 谢谢你,键盘上的牛仔。

支持(0) 反对(0) 我的伙伴 | 园豆:7 (初学一级) | 2013-09-05 15:31
0

C#可以调用Windows API,就看Windows API中是否提供接口了。C#调用Windows API详情可Google“P/Invoke”

会长 | 园豆:12401 (专家六级) | 2013-09-05 15:58
0

调用Win32API应该可以搞定

dudu | 园豆:31003 (高人七级) | 2013-09-05 18:00
0

Xuetr这样的ARK工具,在应用层使用的是大量的平台API来完成类似进程/线程/模块/句柄的枚举以及操作(挂起,结束)。

一些暴力的动作涉及驱动的开发,包括对隐藏进程,线程的查找这些都是涉及到底层HOOK技术的,所以这些都是C#所无法实现的.

 

但是实现这样一个程序不是不可能,只是需要大量的P/Invoke操作而已,以前我就写过一个只是找不到源码,如果楼主决定写,可以给我信息,我想在你开发中应该可以帮助到你一些的

andy1987 | 园豆:490 (菜鸟二级) | 2013-09-05 19:06
0

暂停和恢复外部线程基本上是靠pinvoke调用windows api来实现的。这里有一个C#封装好的例子,应该能满足你的需求:http://stackoverflow.com/questions/71257/suspend-process-in-c-sharp

天方 | 园豆:5407 (大侠五级) | 2013-09-05 19:59
0
li-peng | 园豆:954 (小虾三级) | 2013-09-06 14:06
0

你可以设一个外部变量,让线程根据外部变量自己控制自己啊,比如暂停比如恢复

幕三少 | 园豆:1384 (小虾三级) | 2013-09-07 11:43
0

你看这个想法怎么样?

首先在你想控制的外部程序里提供一个控制接口.

可以输入线程ID,以及操作(暂停,挂起,恢复)等枚举.

然后在此接口里实现对应的操作.

 

你的控制程序只需要调用它提供的接口,传参数去控制就好.

hexllo | 园豆:318 (菜鸟二级) | 2015-08-11 11:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册