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
- Replace dll file
- From within VersionDirectory, Run mage.exe -update clickonceApp.manifest -FromDirectory .
- From Directory, Run mage.exe -update clickonceApp.application -appmanifest .\VersionDirectory\clickonceApp.manifest
- 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'.
- Launch MageUI (using the same mage.exe)
- Open clickonceApp.manifest
- On the files tab, click populate
- click save and accept the unsigned warning
- From Directory, Run mage.exe -update clickonceApp.application -appmanifest .\VersionDirectory\clickonceApp.manifest
- The application launches successfully
Why is there a difference between mage and mageui? Open existing manifest