1

I created .appinstaller file for managing instalation via App Installer. I followed this docs: https://learn.microsoft.com/en-us/windows/uwp/packaging/install-related-set

And I have 3 dependencies for it: enter image description here

Now I want to add metadata about it into Dependencies section like this:

<Dependencies>
    <Package Name="Microsoft.VCLibs.140.00" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="14.0.24605.0" ProcessorArchitecture="x86" Uri="http://foobarbaz.com/fwkx86.appx" />
    <Package Name="Microsoft.VCLibs.140.00" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="14.0.24605.0" ProcessorArchitecture="x64" Uri="http://foobarbaz.com/fwkx64.appx" />
</Dependencies>

The question is from where can I get metadata info about this packages? (Name, Version, Publisher)?

pavel
  • 1,736
  • 1
  • 14
  • 23
  • These are not likely to be real dependencies. The .NET Native glue is provided by the Store server, VCLibs is replaced by the UCRT. Where did this come from, did some tool auto-generate this? – Hans Passant Mar 16 '18 at 12:29
  • @HansPassant Yes. It generates by creating Package for your UWP project. (Solution -> Store -> Create package).I think I have to set this dependencies to Dependency section because otherwise I can get this error on machine without .NET CLR and installed packages that mentioned above (https://stackoverflow.com/questions/48317487/app-installer-failed-to-install-package-dependencies-ask-the-developer-for-mic) – pavel Mar 16 '18 at 12:34
  • 1
    Machines don't need the CLR, .NET Native eliminates it. The store server applies it, you only ever use .NET Native yourself to test your app. Not actually sure what the correct procedure is to ensure that the package never sees the .NET Native build, it is still murky to me how this went wrong. The linked Q+A talks about a debug build, you certainly don't want to make that mistake. – Hans Passant Mar 16 '18 at 12:42
  • @HansPassant so how I understand you, I don't need this dependencies under release? They are only necessary during debug? – pavel Mar 16 '18 at 14:34
  • The only real guess I have is that you somehow created the package from the .NET Native build. I don't really know how that can possibly go wrong, I need to stop guessing. Consider using Build > Clean so wonky stuff gets removed, verify that the build directories are actually empty after this, test the deployment so you can feel good. – Hans Passant Mar 16 '18 at 14:41
  • @HansPassant it seems that I need to do deeper into .NET Native for better understanding.. But I had only one guessing: when you created the package it contains .ps1 script that manage installation process with adding dependencies to it (from Dependencies folder) and signing up this package with certificate. So I thought if I want to use appinstaller file I have to add dependencies to it and create script for sign up it. But it seems it enough to install certificate (sign up it) and after that install application via .appinstaller.. Or something wrong in my understanding? – pavel Mar 16 '18 at 14:59

2 Answers2

2

".appx" files can be opened as archive files. To get the dependencies metadata, open the ".appx" file in 7-zip. Then open the "AppxManifest.xml" file at the root of the archive. You will find the name, publisher, and version in the <Identity /> tag...

Nicolas Séveno
  • 306
  • 2
  • 13
  • It's a good answer and I will pick this as right answer! But actually I have another kind of an error.. And I will describe it into the question. – pavel Apr 28 '18 at 11:18
0

Actually, I tried to find dependensies because of error "Failed to Install a Dependency". As I understood after you have just create .appxbundle in Release configuration. In this way all of reqiure dependencies will install with your package and you'll rid of this error in this way.

pavel
  • 1,736
  • 1
  • 14
  • 23