TPYI123 2024-01-04 13:13 采纳率: 88.5%
浏览 5
已结题

想要调用另外一个软件右键菜单栏里的按键代码怎么弄

想要调用另外一个软件右键菜单栏里的按键 代码怎么弄?
不想让这个窗口放到前台

#include <Windows.h>

int main() {
// 获取其他软件窗口的句柄
HWND hwnd = FindWindow(NULL, "其他软件的窗口标题");

// 如果找到了窗口句柄
if (hwnd != NULL) {
    // 把目标窗口带到前台
    SetForegroundWindow(hwnd);

    // 获取右键菜单的子菜单句柄
    HMENU hMenu = GetSubMenu(GetMenu(hwnd), 0);

    // 发送菜单项点击消息
    // 这个例子点击了第一个菜单项(索引为0)
    SendMessage(hwnd, WM_COMMAND, GetMenuItemID(hMenu, 0), 0);
}

return 0;

}

  • 写回答

2条回答 默认 最新

  • Bin_hao 2024-01-04 15:42
    关注

    在C++中调用其他软件右键菜单栏上的按钮可以通过使用Windows API来完成。

    #include <windows.h>
     
    int main() {
        // 获取当前活动窗口的句柄
        HWND hwnd = GetForegroundWindow();
        
        // 模拟点击右键菜单项
        SendMessage(hwnd, WM_CONTEXTMENU, (WPARAM)0, MAKELPARAM(GetSystemMetrics(SM_CXSCREEN)/2, GetSystemMetrics(SM_CYSCREEN)/2));
        
        return 0;
    }
    
    

    首先使用GetForegroundWindow()函数获取当前活动窗口的句柄(handle),
    然后使用SendMessage()函数发送消息到该窗口,模拟了点击右键菜单项的操作。
    最后返回0表示程序正常结束。
    最后,Stacked armor:以上仅代表我所了解到的,如果有写的不对的地方,或者表述不准确的,也欢迎指正!!!

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

报告相同问题?

问题事件

  • 系统已结题 2月8日
  • 已采纳回答 1月31日
  • 创建了问题 1月4日

悬赏问题

  • ¥20 校园二手交易小程序搭建
  • ¥15 请问在ubuntu用conda创建环境报错怎么能解决
  • ¥15 STM32CubeMX/proteus按键控制指示灯颜色切换
  • ¥20 python,计算区位熵和扩张指数
  • ¥15 Python环境配置
  • ¥15 大四学生的困惑,有偿提问!
  • ¥15 解决页面无法编入索引:被“noindex”标签排除的问题?
  • ¥15 arduino测量电阻
  • ¥15 快手uid转快手号谁能解决 需要开发
  • ¥15 iis部署Django时css不生效,来个真人,ai不好使