通过WinAPI打开/关闭/管理Windows 8应用程序

Open/Close/Manage Windows 8 apps via WinAPI

本文关键字:Windows 应用程序 管理 关闭 WinAPI 打开 通过      更新时间:2023-10-16

是否可以从桌面程序中通过WinAPI函数打开或管理所有Windows 8应用程序(例如内置的邮件或新闻应用程序)

使用"manage",我的意思是打开、关闭、捕捉(向左和向右)或枚举Windows 8应用程序。

我知道应用程序可以注册特殊的URI方案,这样它们就可以通过链接打开(可能通过ShellExecute()和相关函数),但如果它们不注册呢?


我刚刚在Win8应用程序开发博客中发现了Ashwin Needamangala的一篇博客文章,其中涵盖了应用程序激活和使用C++、WinAPI和COM自动化生命周期状态:http://blogs.msdn.com/b/windowsappdev/archive/2012/09/04/automating-the-testing-of-windows-8-apps.aspx

枚举通过PackageManager类工作。可以使用IApplicationActivationManager界面打开应用程序。如果你是打开它的人,并且你有一个句柄,你可能也可以对它调用TerminateProcess,但我还没有尝试过。

编辑:我们开源了apprunner实用程序,它可以安装、运行和卸载软件包,并展示了PackageManager和IApplicationActivationManager的使用。

除此之外,其他交互(即捕捉/取消捕捉)似乎不可能从外部进行。