1

I'm replacing a dll needed by the application with an updated version. Then I need to update the application manifest. When using the UI, the application will run. The commandline creates an invalid manifest.

Scenario: clickonce application is structured as follows: -Directory (containing full application) --clickonceApp.application --VersionDirectory (Versioned Folder) ---clickonceApp.manifest ---dlls

  1. Replace dll file
  2. From within VersionDirectory, Run mage.exe -update clickonceApp.manifest -FromDirectory .
  3. From Directory, Run mage.exe -update clickonceApp.application -appmanifest .\VersionDirectory\clickonceApp.manifest
  4. Application wont launch due to: The element 'dependentAssembly' in namespace 'urn:schemas-microsoft-com:asm.v2' has invalid child element 'hash' in namespace 'urn:schemas-microsoft-com:asm.v2'. List of possible elements expected: 'assemblyIdentity' in namespace 'urn:schemas-microsoft-com:asm.v2'.
  5. Launch MageUI (using the same mage.exe)
  6. Open clickonceApp.manifest
  7. On the files tab, click populate
  8. click save and accept the unsigned warning
  9. From Directory, Run mage.exe -update clickonceApp.application -appmanifest .\VersionDirectory\clickonceApp.manifest
  10. The application launches successfully

Why is there a difference between mage and mageui? Open existing manifest

  • This is the version of mage I'm using: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\mage.exe – user1415164 Jul 31 '20 at 13:31
  • I have encountered this issue as well and would like to know what the resolution could be? I am currently using a workaround. – SA3709 May 21 '21 at 19:42

0 Answers0