当窗口最小化时,如何获取菜单栏或桌面中显示的文本?

时间:2015-09-22 08:09:04

标签: c# c++ windows sdl

我需要获取使用SDL-1.2.15显示窗口的进程的图标名称。

这是关于SDL窗口标题和图标名称的SDL描述:

  

#include" SDL.h"

void SDL_WM_SetCaption(const char *title, const char *icon);
     

设置显示窗口的标题栏和图标名称。

     

title是一个UTF-8编码的以null结尾的字符串,它将作为   窗口标题(窗口顶部的文本)。功能   不会改变字符串。你可以在函数后释放字符串   回报。

     

icon是一个UTF-8编码的以null结尾的字符串,它将作为   图标化窗口标题(菜单栏中显示的文本或   窗口最小化时的桌面)。与标题一样,这个字符串可以   在函数返回后被释放。

例如ffplay使用了SDL,我可以像这样运行它:

 Process p= new Process();
 p.StartInfo.FileName = "ffplay.exe";
 p.StartInfo.Arguments = "-i test.avi";
 p.Start();

然后我可以使用GetWindowText API获取窗口标题,但我无法获取图标名称。

请告诉我如何获取图标名称。 (抱歉我的英文)

更新: 当窗口最小化时,我不需要图标,我需要显示在菜单栏或桌面上的文本。(称为图标名称)请阅读SDL-Description。

我也看到了这一点:Getting the icon associated with a running application

但它对我不起作用,因为Icon.ExtractAssociatedIcon无法获取图标名称。所以我的问题不重复。

更新: 我编辑了我的问题标题。

0 个答案:

没有答案