SOLVED
Home

How to create a MSIX package for a WPF app that doesn't have an MSI

%3CLINGO-SUB%20id%3D%22lingo-sub-637074%22%20slang%3D%22en-US%22%3EHow%20to%20create%20a%20MSIX%20package%20for%20a%20WPF%20app%20that%20doesn't%20have%20an%20MSI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-637074%22%20slang%3D%22en-US%22%3E%3CP%3EHi%2C%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20have%20an%20WPF%20application%20that%20I'm%20trying%20to%20package%20that%20doesn't%20have%20an%20MSI.%20The%20application%20is%20a%20composite%20application%20created%20with%20PRISM%20and%20the%20modules%20it%20should%20contain%20are%20only%20known%20during%20deployment%20or%20rather%20right%20before%20deployment.%3C%2FP%3E%3CP%3ESo%20the%20steps%20are%3A%3C%2FP%3E%3COL%3E%3CLI%3EApplication%20and%20Modules%20are%20built%20and%20pushed%20to%20Octopus%20deployment%20server%3C%2FLI%3E%3CLI%3EDuring%20Deployment%20all%20modules%20are%20gathered%20into%20a%20folder%3C%2FLI%3E%3C%2FOL%3E%3CP%3Eand%20for%20a%20step%203%20I%20would%20need%20to%20create%20an%20MSIX%20package%20through%20an%20CMD%20line%20tool%20on%20my%20Build%2FDeployment%20server.%3C%2FP%3E%3CP%3EIs%20that%20possible%2C%20and%20if%20so%20how%20can%20I%20do%20go%20about%20doing%20it%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI've%20been%20trying%20out%20the%20DesktopAppConverter%20and%20its%20been%20working%20fine%20locally%20where%20the%20MSIX%20has%20been%20created%20successfully%20but%20it%20hasn't%20been%20working%20at%20all%20on%20the%20Build%2FDeployment%20server.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ERegards%3C%2FP%3E%3CP%3EValdimar%20Thor%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-653667%22%20slang%3D%22en-US%22%3ERe%3A%20How%20to%20create%20a%20MSIX%20package%20for%20a%20WPF%20app%20that%20doesn't%20have%20an%20MSI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-653667%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20ValdimarThor%2C%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EDesktopAppConverter%20is%20an%20option%20for%20post%20build%20conversion.%20You%20could%20also%20look%20into%20using%3A%26nbsp%3B%3CFONT%20style%3D%22background-color%3A%20%23ffffff%3B%22%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fmsix%2Fmpt-overview%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fmsix%2Fmpt-overview%3C%2FA%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3ECould%20you%20elaborate%20on%20what%20specifically%20does%20not%20work%20on%20your%20build%20server%3F%3C%2FP%3E%0A%3CP%3ESince%20you%20are%20building%20from%20source%2C%20you%20consider%20just%20using%20the%20conversion%20tools%20to%20generate%20a%20sample%20MSIX%20manifest.%20You%20could%20then%20have%20your%20build%20system%20directly%20use%20the%20packaging%20tools%20to%20create%20the%20MSIX.%20See%3A%26nbsp%3B%3CFONT%20style%3D%22background-color%3A%20%23ffffff%3B%22%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fuwp%2Fpackaging%2Fcreate-app-package-with-makeappx-tool%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fuwp%2Fpackaging%2Fcreate-app-package-with-makeappx-tool%3C%2FA%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThanks!%3CBR%20%2F%3EJames%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-654818%22%20slang%3D%22en-US%22%3ERe%3A%20How%20to%20create%20a%20MSIX%20package%20for%20a%20WPF%20app%20that%20doesn't%20have%20an%20MSI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-654818%22%20slang%3D%22en-US%22%3E%3CP%3EHi%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F235896%22%20target%3D%22_blank%22%3E%40James%20Pike%3C%2FA%3E%26nbsp%3Band%20thanks%20for%20the%20reply%3C%2FP%3E%3CP%3EI%20managed%20to%20get%20it%20to%20work%20using%20MakeAppx.exe%20but%20does%20it%20also%20support%20enabling%20automatic%20updates%20for%20the%20package%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ERegards%20Valdimar%20Thor%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-657100%22%20slang%3D%22en-US%22%3ERe%3A%20How%20to%20create%20a%20MSIX%20package%20for%20a%20WPF%20app%20that%20doesn't%20have%20an%20MSI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-657100%22%20slang%3D%22en-US%22%3E%3CP%3EI'm%20not%20entirely%20sure%20what%20you%20mean%20by%20enabling%20automatic%20updates%3F%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBy%20virtue%20of%20being%20MSIX%2C%20if%20you%20create%20a%20new%20MSIX%20with%20the%20same%20package%20name%20and%20publisher%20but%20an%20updated%20version%20number%2C%20you%20will%20automatically%20get%20delta%20update%20behavior.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EYou%20would%20need%20to%20extend%20your%20build%20system%20to%20increment%20the%20version%20numbers%20of%20your%20package%20yourself.%26nbsp%3B%20It%20also%20will%20not%20automatically%20push%20these%20packages%20to%20other%20machines%20for%20you.%20%26nbsp%3B%3C%2FP%3E%0A%3CP%3EIf%20that%20is%20a%20scenario%20for%20you%2C%20you%20might%20find%20the%20appinstaller%20file%20a%20viable%20option%3A%20%3CFONT%20style%3D%22background-color%3A%20%23ffffff%3B%22%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fmsix%2Fapp-installer%2Fapp-installer-file-overview%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fmsix%2Fapp-installer%2Fapp-installer-file-overview%3C%2FA%3E%3C%2FFONT%3E.%26nbsp%3B%20You%20could%20potentially%20craft%20your%20build%20system%20to%20place%20the%20MSIX%20file%20onto%20a%20well%20known%20share%20and%20then%20configure%20the%20appinstaller%20file%20to%20look%20for%20updates%20when%20your%20users%20launch%20the%20app.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThanks!%3CBR%20%2F%3EJames%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-664221%22%20slang%3D%22en-US%22%3ERe%3A%20How%20to%20create%20a%20MSIX%20package%20for%20a%20WPF%20app%20that%20doesn't%20have%20an%20MSI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-664221%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F235896%22%20target%3D%22_blank%22%3E%40James%20Pike%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EBrilliant%20James%2C%20thanks%20for%20the%20clarification.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3Ebest%20regards%3C%2FP%3E%3CP%3EValdimar%20Thor%3C%2FP%3E%3C%2FLINGO-BODY%3E
Highlighted
ValdimarThor
New Contributor

Hi, 

 

I have an WPF application that I'm trying to package that doesn't have an MSI. The application is a composite application created with PRISM and the modules it should contain are only known during deployment or rather right before deployment.

So the steps are:

  1. Application and Modules are built and pushed to Octopus deployment server
  2. During Deployment all modules are gathered into a folder

and for a step 3 I would need to create an MSIX package through an CMD line tool on my Build/Deployment server.

Is that possible, and if so how can I do go about doing it?

 

I've been trying out the DesktopAppConverter and its been working fine locally where the MSIX has been created successfully but it hasn't been working at all on the Build/Deployment server.

 

Regards

Valdimar Thor

4 Replies

Hi ValdimarThor,

 

DesktopAppConverter is an option for post build conversion. You could also look into using: https://docs.microsoft.com/en-us/windows/msix/mpt-overview

 

Could you elaborate on what specifically does not work on your build server?

Since you are building from source, you consider just using the conversion tools to generate a sample MSIX manifest. You could then have your build system directly use the packaging tools to create the MSIX. See: https://docs.microsoft.com/en-us/windows/uwp/packaging/create-app-package-with-makeappx-tool

 

Thanks!
James

Hi@James Pike and thanks for the reply

I managed to get it to work using MakeAppx.exe but does it also support enabling automatic updates for the package?

 

Regards Valdimar Thor

Solution

I'm not entirely sure what you mean by enabling automatic updates?

 

By virtue of being MSIX, if you create a new MSIX with the same package name and publisher but an updated version number, you will automatically get delta update behavior.

 

You would need to extend your build system to increment the version numbers of your package yourself.  It also will not automatically push these packages to other machines for you.  

If that is a scenario for you, you might find the appinstaller file a viable option: https://docs.microsoft.com/en-us/windows/msix/app-installer/app-installer-file-overview.  You could potentially craft your build system to place the MSIX file onto a well known share and then configure the appinstaller file to look for updates when your users launch the app.

 

Thanks!
James

@James Pike 

 

Brilliant James, thanks for the clarification.

 

best regards

Valdimar Thor

Related Conversations
Tabs and Dark Mode
cjc2112 in Discussions on
22 Replies
Stable version of Edge insider browser
HotCakeX in Discussions on
35 Replies
flashing a white screen while open new tab
cntvertex in Discussions on
13 Replies
How to Prevent Teams from Auto-Launch
chenrylee in Microsoft Teams on
28 Replies