设置其他进程的应用程序用户模型ID

时间:2011-02-28 11:48:54

标签: windows-7 taskbar

我有一个启动另一款应用的启动器应用。对于其他应用程序与Windows 7的任务栏很好地配合,我必须设置Application User Model ID

通常一个进程必须通过调用SetCurrentProcessExplicitAppUserModelID()为自己设置此id,但在这种特定情况下我无法控制其他应用程序启动代码,所以我必须在外部设置它,最好通过使用一些一种ShellExecute,它将ID传递给应用程序。

这可能吗?

1 个答案:

答案 0 :(得分:2)

如果不调用SetCurrentProcessExplicitAppUserModelID,Windows将自动为进程生成一个id,这对于最近的文件跳转列表部分应该足够了。

如果您出于任何原因想要为第三方应用设置特定ID,我会尝试其中一种(我没有尝试过任何这些建议)

  • 在应用程序窗口中使用SHGetPropertyStoreForWindow(我从未试图像这样设置id,但我知道你可以通过这种方式读取另一个进程的id)。
  • 创建一个临时快捷方式,以启动具有特定ID的应用
  • 注入流程并调用SetCurrentProcessExplicitAppUserModelID