【发布时间】:2010-12-30 11:41:01
【问题描述】:
我在一些小型测试应用程序中创建了一个附加线程,并希望从这个附加线程中挂起主线程。附加线程是通过CreateRemoteThread 从外部进程创建的。
由于SuspendThread 需要一个HANDLE 到应该暂停的线程,我想知道如何从我的附加线程中运行的代码中获取这个HANDLE。
【问题讨论】:
-
它是windows 7下的32位进程。我使用的是Visual Studio 2008,因此是Visual C++。
-
你想只挂起“主”线程还是全部?你到底想达到什么目的?它可能有另一种方式来做到这一点......
-
主线程就足够了。但是,暂停所有线程的解决方案也适用于我的情况。我想从我的附加线程中调用一些非线程安全函数,通常由进程主线程调用。
-
暂停一个线程不会使你的其他线程的操作线程安全。就您所知,主线程可能在您调用 SuspendThread 时正在执行该非线程安全操作。
标签: c++ windows multithreading dll-injection