如果根据线程ID取线程句柄? 已知一线程ID, ]请问如何得到该线程的句柄? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 OpenThread(THREAD_ALL_ACCESS,FALSE,dwThreadId); DWORD dwThreadID = GetCurrentThreadId(); DWORD dwProcessID = GetCurrentProcessId(); printf( "ProcessId: %X ThreadId: %X\n", dwProcessID, dwThreadID ); HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessID ); if ( !hProcess ) { printf( "unable to open process\n" ); return 0; } // Show OpenThread() HANDLE hThread = OpenThread( THREAD_ALL_ACCESS, FALSE, dwThreadID ); printf( "hProcess: %IX hThread: %IX\n", hProcess, hThread ); 我已经取到dwThreadId, 但使用 OpenThread(THREAD_ALL_ACCESS,FALSE,dwThreadId);得到的句柄是NULL, 这是为什么? 通常是没有权限~~你可以 OpenThread失败后,用GetLastError看看是什么原因。 可以用FormatMessage,或者用VC自带的工具Error Lookup。 我的目的是取取当前顶层窗口对应的进程ID或者名称?而我现在只能取到其中的一个进程ID.如果能直接取进程ID就更好了. dwThreadId = GetWindowThreadProcessId(HWND hWnd, LPDWORD lpdwProcessId) GetWindowThreadProcessId可以取到窗口对应的进程ID。 GetWindowThreadProcessId返回的是线程ID,进程ID在 lpdwProcessId 双缓冲自绘 malloc后 free时的问题。 如何在picture上动态显示位图? 求助 VC编译的时候总是黑屏,如何还原回来 如何用F5实现最小化窗口到系统托盘 设置环境变量的问题,高手救我啊,在线等。。。。 AfxBeginThread开的线程怎么结束? [高手看进来]控制条问题 new的差错问题,在线等待 主窗口启动后隐藏,子窗口启动,子窗口关闭时怎么让主窗口也关闭? 急,200分请教一个关于文件缓存的问题!
DWORD dwProcessID = GetCurrentProcessId();
printf( "ProcessId: %X ThreadId: %X\n", dwProcessID, dwThreadID ); HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessID );
if ( !hProcess )
{
printf( "unable to open process\n" );
return 0;
} // Show OpenThread()
HANDLE hThread = OpenThread( THREAD_ALL_ACCESS, FALSE, dwThreadID );
printf( "hProcess: %IX hThread: %IX\n", hProcess, hThread );
得到的句柄是NULL, 这是为什么?
你可以 OpenThread失败后,用GetLastError看看是什么原因。
而我现在只能取到其中的一个进程ID.
如果能直接取进程ID就更好了.