Как получить путь к рабочему столу в AppxManifest

Я пытаюсь перенести свое приложение на платформу UWP с помощью Desktop Bridge.

В этом сообщении блога объясняется, как перенести ярлык на рабочем столе: https://blogs.windows.com/buildingapps/2017/03/10/desktop-bridge-smooth-user-transition-data-migration/

Короче говоря, манифест должен содержать что-то вроде этого:

<rescap3:Extension Category="windows.desktopAppMigration">
    <rescap3:DesktopAppMigration>
        <rescap3:DesktopApp AumId="[your_app_aumid]" />
        <rescap3:DesktopApp ShortcutPath="%USERPROFILE%\Desktop\[my_app].lnk" />
    </rescap3:DesktopAppMigration>
</rescap3:Extension>

Однако рабочий стол пользователя не всегда находится по адресу %USERPROFILE%\Desktop. Чистая установка Windows 10 поместит рабочий стол в OneDrive %USERPROFILE%\OneDrive\Desktop (в зависимости от настроек).

Есть ли лучший способ получить папку рабочего стола внутри AppxManifest?

Заранее спасибо за любую помощь в этом.


person marv51    schedule 23.03.2018    source источник


Ответы (1)


Вы можете определить несколько ShortcutPath в AppXManifest.

Во время развертывания ОС будет искать lnk-файл и, если не найдет, переходит к следующему ShortcutPath по порядку, пока не найдет его (если он вообще существует).

Это работает для вашего сценария?

person Arian    schedule 23.03.2018
comment
Это работает для меня, любые оставшиеся ярлыки для настольной версии будут удалены моим деинсталлятором настольного приложения. - person marv51; 23.03.2018