我第一次使用Desktop Bridge应用程序时,我正在尝试创建桌面快捷方式。
我成功创建了一个指向Application.ExecutablePath的桌面快捷方式,但是当用户打开快捷方式时会产生错误。错误是关于用户没有权限访问该文件夹。
我在互联网上进行了研究,发现适当的方法是用shell做这个:shell:AppsFolder {AppUserModelId}
但至少在Desktop-Bridge中,当我实现Windows.ApplicationModel.AppInfo时,它始终为null
问题是,我可以在哪里获得AppUserModelId,还是有另一种方法可以在UWP /桌面桥中创建桌面快捷方式。
感谢。
答案 0 :(得分:2)
回答问题在哪里获取AppUserModelID:
打包应用程序(DesktopBridge或UWP应用程序)的AUMID简单地由PackageFamilyName +"!"组成。 + PackageRelativeAppID。
使用Fall Creators Update,我们还在AppListEntry上添加了一个属性,因此您不需要自己编写它: https://docs.microsoft.com/en-us/uwp/api/windows.applicationmodel.core.applistentry#Properties_
因此,要获得应用的AUMID,您可以将其命名为:
string aumid = (await Package.Current.GetAppListEntriesAsync()).First().AppUserModelId;
(假设您的软件包包含一个应用程序)
答案 1 :(得分:1)
我在互联网上进行了研究,发现适当的方法是使用shell来实现:
shell:AppsFolder{AppUserModelId}
您可以使用上述方法在Windows 8.1中为您的应用创建快捷方式,但不建议在Windows 10中使用。现在,您可以将应用的图标从Start
拖到桌面以直接创建快捷方式。
但至少在Desktop-Bridge中,当我实现
Windows.ApplicationModel.AppInfo
时,它总是为空。
打包的桌面应用程序无法使用Windows.ApplicationModel.AppInfo
。有关更多信息,请参阅this官方文档。