question

DennisJadeManaug-4477 avatar image
0 Votes"
DennisJadeManaug-4477 asked DennisJadeManaug-4477 commented

Xamarin Forms UWP choosing dependency versions for package output

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.

windows-uwp
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

1 Answer

NicoZhu-MSFT avatar image
1 Vote"
NicoZhu-MSFT answered DennisJadeManaug-4477 commented

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.





· 3
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Hi @NicoZhu-MSFT,

Thanks for the response.

So basically, once we update our Visual Studio the VCLibs version is also updated.

Seems like our development machines are ahead in updates than the target machines. When we try to install the new packages on not yet updated target machines, this causes the installation to fail.
Thus, trying to find out if we can create a package on development machines having the older VCLibs version on the target machines.

Aside from replacing the new ExtensionSDKs on the path you provided above with the older one.
If we install an older version of Visual Studio, will it also use and older version of VCLibs?

0 Votes 0 ·
NicoZhu-MSFT avatar image NicoZhu-MSFT DennisJadeManaug-4477 ·

I have not tested, but if you remove VS and reinstall the old one, it will deploy the older extension sdk by default. and if the answer is helpful please consider accept it.

0 Votes 0 ·

Thanks again for the help. Much appreciated.

0 Votes 0 ·