对酒刚歌 2023-12-08 16:48 采纳率: 0%
浏览 8
已结题

用sendmessage函数把第三方软件窗体隐藏 会什么再次运行第三方软件时 无法再隐藏了

怎么解
用sendmessage函数把第三方软件窗体隐藏 会什么再次运行第三方软件时 无法再隐藏了 多谢怎么解

  • 写回答

18条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-12-08 16:48
    关注
    获得0.45元问题酬金

    引自强大而免费的微信小程序:皆我百晓生

    问题解答:

    1. 问题描述
    您希望使用SendMessage函数隐藏第三方软件窗体,但再次运行该软件时无法再隐藏窗体。

    2. 原因分析
    这种情况可能发生在以下几种情况下:

    • 第三方软件窗体初始状态为隐藏,但您在非隐藏的状态下尝试隐藏窗体,SendMessage函数无法将其再次隐藏。
    • 第三方软件在后台运行,通过SendMessage函数发送窗口隐藏消息后,软件可能会自动显示窗体。

    3. 解决方法
    为了解决这个问题,您可以尝试以下两种方法:

    方法一:使用ShowWindow函数
    您可以使用ShowWindow函数来控制窗口的显示和隐藏。该函数可以通过设置nCmdShow参数为SW_HIDE来隐藏窗口。在第三方软件再次运行时,您可以调用该函数将窗口重新隐藏。

    以下是示例代码:

    #include <Windows.h>
    
    int main()
    {
        // 获取第三方软件窗口的句柄
        HWND hWnd = FindWindow(NULL, L"第三方软件窗口标题");
    
        if (hWnd != NULL)
        {
            // 隐藏窗口
            ShowWindow(hWnd, SW_HIDE);
        }
    
        // ... 后续代码
    
        return 0;
    }
    

    方法二:使用SetWindowPos函数
    另一种方法是使用SetWindowPos函数来移动窗口。您可以将窗口的位置设置到屏幕外,从而达到隐藏窗口的效果。同样,在第三方软件再次运行时,您可以再次使用SetWindowPos函数将窗口移动回显示区域。

    以下是示例代码:

    #include <Windows.h>
    
    int main()
    {
        // 获取第三方软件窗口的句柄
        HWND hWnd = FindWindow(NULL, L"第三方软件窗口标题");
    
        if (hWnd != NULL)
        {
            // 将窗口移动到屏幕外
            SetWindowPos(hWnd, NULL, -10000, -10000, 0, 0, SWP_NOZORDER | SWP_NOSIZE | SWP_SHOWWINDOW);
        }
    
        // ... 后续代码
    
        return 0;
    }
    

    请注意,以上示例代码中的"第三方软件窗口标题"应替换为实际第三方软件窗口的标题。

    4. 总结
    通过使用ShowWindow函数或SetWindowPos函数,您可以实现隐藏第三方软件窗体并在再次运行时重新隐藏窗体的效果。为了确保准确找到第三方软件窗口的句柄,您可以使用FindWindow函数根据窗口标题查找窗口句柄。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月16日
  • 创建了问题 12月8日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题