社区
API
帖子详情
跪求怎么在9X系统下用VB获取线程的句柄
IORI915189
2006-06-27 05:43:54
如题
怎么在9X系统下用VB获取线程的句柄
就是在2000系统使用OpenThread这个API函数的功能
...全文
439
11
打赏
收藏
跪求怎么在9X系统下用VB获取线程的句柄
如题 怎么在9X系统下用VB获取线程的句柄 就是在2000系统使用OpenThread这个API函数的功能
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
IORI915189
2006-10-02
打赏
举报
回复
最后顶一个 !`_~
pigsanddogs
2006-10-02
打赏
举报
回复
HANDLE OpenThread9x(DWORD dwDesiredAccess,
BOOL bInheritHandle,
DWORD dwThreadId)
{
HANDLE hThread;
PTDB pTDB;
SetLastError(ERROR_INVALID_PARAMETER);
// Check if TID is valid
if (!IsThreadId(dwThreadId))
return NULL;
// Thread Database pointer
if (!(pTDB = GetTDB(dwThreadId)))
return NULL;
// InternalOpenThread()
__asm mov eax, pTDB;
__asm push dwThreadId;
__asm push bInheritHandle;
__asm push dwDesiredAccess;
__asm call InternalOpenThread;
__asm mov hThread, eax;
return hThread;
}
pigsanddogs
2006-10-02
打赏
举报
回复
EliCZ写的EliRT库,专门在98下模拟openthread, createremotethread, virtualallocex等
VirtualDesktop
2006-10-02
打赏
举报
回复
CreateToolhelp32Snapshot
Process32First
Process32Next
IORI915189
2006-09-12
打赏
举报
回复
UP
IORI915189
2006-07-06
打赏
举报
回复
UP
怎么没人回答
空心兜兜
2006-07-01
打赏
举报
回复
帮顶……
IORI915189
2006-07-01
打赏
举报
回复
顶一个
IORI915189
2006-06-30
打赏
举报
回复
我要的是OpenThread 获取线程句柄函数
OpenProcess 是获取进程句柄 天地之别呀
还有是在9X系统下 不是在2000以上系统中哦
2000以上系统可以直接用OpenThread这个API拉
虽然回答错了 但也谢谢你和楼上这为朋友的热心
期望高手回答 VB能OR不能在9X下实现这个功能
清晨曦月
2006-06-28
打赏
举报
回复
楼上同志似乎有点问题。。
这个过程呢,楼主要的是线程,
另外,你这代码写的不闲麻烦。。
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, 0, pe.th32ProcessID)
GetProcessHandle = hProcess
CloseHandle hSnapshot
这样不好吗
GetProcessHandle = OpenProcess(PROCESS_QUERY_INFORMATION, 0, pe.th32ProcessID)
CloseHandle hSnapshot
一笑拔剑
2006-06-27
打赏
举报
回复
只要找到吗?
看这个函数行不OpenProcess
Public Function GetProcessHandle As Long(ByVal sPath As String)’获取被监控进程的进程句柄
sPath = LCase(sPath)
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)’创建一个snapshot对象
pe.dwSize = Len(pe)
bValue = Process32First(hSnapshot, pe)’开始遍历系统进程池
While bValue <> 0
If InStr(LCase(pe.szExeFile), sPath) <> 0 Then’如果找到了,则…
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, 0, pe.th32ProcessID)
GetProcessHandle = hProcess
CloseHandle hSnapshot
Exit Function
获取
线程
句柄
的三种方法
获取
线程
句柄
的三种方法 1.通过进程的PID并调用API函数:HANDLE OpenProcess( DWORD dwDesiredAccess, // access flag BOOL bInheritHandle, // handle inheritance option DWORD dwProcessId //
vb
获取
窗口
句柄
并发信息
(本文中部分使用繁体字,如果在简体
系统
下请将第三部实例程序记事本标题换成相对应的简体名称) 第一部分: 常用的与窗体相关的API函数 Public Declare Function ShowWindow Lib"user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long (根据
句柄
控制某一窗体显示状态) Public Decla
linux读取进程的
句柄
,
获取
真正的进程/
线程
句柄
首先在开始正文之前先介绍最简单的
获取
进程/
线程
句柄
方法。那就是可以在创建进程/
线程
时
获取
句柄
。创建进程/
线程
是
获取
句柄
。//进程创建函数BOOL CreateProcess(PCTSTR pszApplicationName,PTSTR pszCommandLine,PSECURITY_ATTRIBUTES psaProcess,PSECURITY_ATTRIBUTES psaThread,BOO...
基于win32的多
线程
编程01:Windows中的
线程
ID和
线程
句柄
Windows中的
线程
ID和
线程
句柄
1.什么是
句柄
? 本质是指针,在Win中
句柄
是指向指针的指针 typedef void *HANDLE; 一个应用程序,组成该程序的众多对象存在内存中 一般的理解是,只要
获取
了对象的内存地址便可以随意操作对象了,但是这个想法是不对的 因为Window是一个以虚拟内存为基础的操作
系统
在Win下,windows的内存管理器经常在内存中移动对象,来满各种应用程序的需要,这就导致对象的地址发生变化 为应对这一情况,Windows
系统
专门在内存中腾出一
线程
、
线程
句柄
、
线程
ID
在windows
系统
中,
线程
的id是唯一对应的,也就是说,如果两个
线程
返回相同的id,则他们必然是同一
线程
,反之一定是不同的
线程
。而
线程
的
句柄
并不是
线程
的唯一标识,
线程
的
句柄
只是用来访问该
线程
的的一个32位值,尽管相同的
句柄
一定标识同一
线程
,但同一
线程
可能拥有两个打开的
句柄
,因此,不能用
句柄
来区分两个
线程
是否是同一
线程
。在 Windows 中,大多数对象是由包含创建这些对象的
线程
的进程拥有的。当一个
线程
终止运行时,在与它相关联的
线程
内核对象的所有未结束的引用关闭之前,该内核对象不会自动被释放。
API
1,488
社区成员
23,276
社区内容
发帖
与我相关
我的任务
API
VB API
复制链接
扫一扫
分享
社区描述
VB API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章