PROCESS_INFORMATION结构体问题~~

caixingxin 2007-11-18 04:18:27
用CreateProcess创建进程,最后那个参数是一个PROCESS_INFORMATION结构体~~可是怎么对它应用呢~~我想发一条信息给那个进程~~直接用那个结构体的hProcess成员,但是有错说hProcess是void*类型的~~要经过转换才能用的吗~
...全文
107 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
caixingxin 2007-11-18
  • 打赏
  • 举报
回复
自己顶一下~~
caixingxin 2007-11-18
  • 打赏
  • 举报
回复
恕我笨..
还是不明白~~这个不是枚举所有子窗口的吗~~不懂~~
我是通过CreateProcess得到一个HANDLE,如何通过这个HANDLE得到那个进程的主窗口呢~~难道又要用FindWindow吗~~
先去吃饭...回来看有没有答案....
yxz_lp 2007-11-18
  • 打赏
  • 举报
回复
你怎么就不看全


BOOL CALLBACK EnumWindowsProc(HWND hwnd,LPARAM lparam)
{
DWORD ProcId;
DWORD ThreadId;
ThreadId=GetWindowThreadProcessId(hwnd,&ProcId)
if(ProcId==your process ID)//和你的process ID进行比较
{
HWND targetWin; //进程主窗口,就是你要得到的窗口句柄
targetWin=hwnd;
while(true)
{
HWND hTemp;
hTemp=GetParent(targetWin);
if(hTemp==NULL)
break;
else
targetWin=hTemp;
}
return FALSE;
}
else
return true;
}

EnumWindows(EnumWindowsProc,0);


caixingxin 2007-11-18
  • 打赏
  • 举报
回复
那个FindWindow的我知道~~但我现在有一个进程的句柄,要怎么得到这个进程的主窗口的句柄呢~~
yxz_lp 2007-11-18
  • 打赏
  • 举报
回复
http://book.77169.org/ask22/how141775.htm
通过上面链接知道如何得到别一个process的窗体的HWND
然后,::SendMessage(hwnd,......);
caixingxin 2007-11-18
  • 打赏
  • 举报
回复
那应该怎么发呢~~请指教~~我刚学VC的~~
yxz_lp 2007-11-18
  • 打赏
  • 举报
回复
我想发一条信息给那个进程//你怎么发的,别说是::SendMessage(hProcess,......);

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧