MfwebN 2016-08-14 18:05 采纳率: 50%
浏览 1126
已采纳

GetWindowThreadProcessId 不同窗体返回相同进程PID

代码如下

//获取所有同名窗体
 unsigned char get_all(HWND WindowList[4])
{
    int i;
    HWND hWnd;
    for(i=0;i<4;i++)
    {
        if(i == 0)
            hWnd = FindWindow(NULL,"abc");
        else
            hWnd = GetNextWindow(hWnd,GW_HWNDNEXT);
        if(hWnd!=NULL)
            WindowList[i] = hWnd;
        else
            break;
    }
    if(i !=4 )return 0;
    else return 1;
}

int main(int argc, char* argv[])
{
    unsigned char i = 0;
    unsigned int j = 0;
    int starta=0x0;
    unsigned int read_l = 0x00;
    DWORD temp;

    HWND window_list[4];
    DWORD porcess_list[4];
    HANDLE porcess_handle_list[4];

    if(!get_all(window_list))
    {
        printf("Can not found");
        system("PAUSE");
        return 1;
    }
    printf("hwnd:");
    for(i=0;i<4;i++)
        printf("%x ",window_list[i]);

    printf("\r\nPID:");
    for(i=0;i<4;i++)
    {
        GetWindowThreadProcessId(window_list[i],porcess_list+i);
        printf("%u ",porcess_list[i]);
    }
}

返回值如下:后三个的进程ID每次都返回一样的,请问是哪里不对呢
图片说明

  • 写回答

2条回答 默认 最新

  • MfwebN 2016-08-14 22:15
    关注

    找到问题了,搜索到的窗口并不是我想要的,改变搜索办法后解决了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题