Xamarin Forms UWP choosing dependency versions for package output

Dennis Jade Manaug 21 Reputation points
2021-10-20T05:19:00.963+00:00

I am using Visual Studio version 16.11.3 in creating a UWP application package.
Upon completing the packaging and checking the output, the "Dependencies" folder containing the "Microsoft.VCLibs.x64.14.00.appx" has a higher version (14.0.30035.0) than is currently installed on the target machines (14.0.29231.0).
This causes issues when installing the 'appxbundle' file to the target machine as the higher version is not yet installed.

I need help in figuring out on a couple of issues:

  1. If possible, can we make the dependency version on the package output to use the older version on the target machine instead of the higher one? To avoid the installation issues.
  2. What triggers the change/update in the version of "Microsoft.VCLibs.x64.14.00.appx" when no code changes are made to update that dependency? Can it be avoided?

The only solution I have found before was to never update my Visual Studio version to have same dependency version every time I create a UWP package. However, is a problem for some dev machines that already has installed the latest Visual Studio version and already has the latest dependency version.

Thanks ahead.

Universal Windows Platform (UWP)
0 comments No comments
{count} votes

Accepted answer
  1. Nico Zhu (Shanghai Wicresoft Co,.Ltd.) 12,851 Reputation points
    2021-10-21T02:10:22.783+00:00

    Hello,
    Welcome to Microsoft Q&A!

    What triggers the change/update in the version of "Microsoft.VCLibs.x64.14.00.appx" when no code changes are made to update that dependency? Can it be avoided?

    The short answer is no, it was managed with Visual Studio, you could find this ExtensionSDKs with path C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\Appx\Debug, Those appx will
    be updated to latest version after visual studio updated.

    If possible, can we make the dependency version on the package output to use the older version on the target machine instead of the higher one? To avoid the installation issues.

    For this scenario, we don't suggest you use old version ExtensionSDKs, you could sideload the appxbundle with power shell, it will install the extension automatically. And if you do want to use old version, you could try to use the old ExtensionSDKs to replace current one where stored in above path.

    Thank you.


    If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    1 person found this answer helpful.

0 additional answers

Sort by: Most helpful