在从桌面C ++启动的Win10 Modern应用程序中打开文件时出错

时间:2016-02-14 17:48:24

标签: c++ windows-10 launching-application

我尝试使用以下代码从桌面C ++使用Windows 10 Photos应用程序(这是一个现代应用程序)打开图像文件(为简单起见,省略了错误检查):< / p>

DWORD pid;
CComPtr<IApplicationActivationManager> paam;
CoCreateInstance(CLSID_ApplicationActivationManager, NULL, CLSCTX_LOCAL_SERVER, IID_PPV_ARGS(&paam));
CoAllowSetForegroundWindow(paam, NULL);
paam->ActivateForFile(pwszAppUserModelId, psia, L"open", &pid);

pwszAppUserModelId是“照片”应用的应用用户型号ID。 psia是指向IShellItemArray的指针,其中包含图像文件(PNG)的单个IShellItem

ActivateForFile返回错误0x80270255:

  

&#39;此应用已注册多个扩展程序以支持指定的合同。 AppUserModelId的激活是不明确的。&#39;

有关如何解决此问题的任何提示? TIA。

0 个答案:

没有答案