根据菜单名获取菜单内容

getMenuText(menuName){
	Handle := MenuGetHandle(menuName)

	; 获取菜单内菜单项的数目.
	item_count := DllCall("GetMenuItemCount", "ptr", Handle)
	ret := ""
	Loop, % item_count
	{
		menuItemIndex := A_Index - 1 ;菜单项位置索引
		; 获取菜单项字符串长度
		strLen := DllCall("GetMenuStringA", "Ptr", Handle, "UInt", menuItemIndex, "Ptr", 0, "Int", 0, "UInt", 0x400)
		; 分配缓冲区
		VarSetCapacity(buffer, strLen + 1)
		; 获取菜单项字符串
		DllCall("GetMenuStringA", "Ptr", Handle, "UInt", menuItemIndex, "Ptr", &buffer, "Int", strLen + 1, "UInt", 0x400)
		; 显示菜单项字符串
		ret.= StrGet(&buffer, strLen, "CP0") "`n"
		; 释放资源
		; DllCall("GlobalFree", "Ptr", &buffer)
	}
	MsgBox, % ret
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA捐赠
共{{data.count}}人
人已捐赠
函数

把内嵌base64字符串转为托盘图标

2023-9-14 15:49:44

函数

获取时间戳及时间戳转正常时间格式

2023-9-20 14:53:05

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索