Installing dll and header files with MSIX

Copper Contributor

Hi everyone,

 

I'm currently looking at redesigning the deployment strategy for a Windows applications which consists of a GUI application, a CLI, and a set of libraries.

 

I can get the GUI and CLI to work as expected when installed via an MSIX package, but I'm having difficulties with the libraries. I want the user to access and copy these libraries for use in their own projects, but obviously when the application files are installed they're sandboxed in WindowsApps, so aren't meant to be accessible.

 

Is there a way to deal with this issue within the MSIX ecosystem? Or do I need to deploy these libraries through some other means?

 

I've seen it's possible to copy files outside of the WindowsApps directory using the Package Support Framework and Powershell scripts, but this doesn't seem very viable as the user would have to start the application before the library files would be copied.

 

Thanks

4 Replies

Hi @TomLewis,

 

I'm not sure I understand the scenario you are working within with your app. Are you able to elaborate more on this? What is the purpose of your app, and why would someone want to manually retrieve content from it?

Have you looked at using the Invoke-CommandInDesktopPackage PowerShell cmdlet? This could be used to copy contents from the apps VFS through PowerShell without physically launching the app.

@TomLewis The installation is unable to copy files outside of the package area by design, so you'll need something to perform the file copy.  You sound like you have already looked at using the Psf,  which could handle the task, but code in the GUI or CLI could also perform a copy as long as the destination is outside of the package boundary, much as one would write files to the user's Documents folder.

 

Tim

Three years later, do we have another solution? Is virtual file system the solution? In my experience, we can install Python through Microsoft Store and use its standard library included in WindowsApps directory. How can we achieve it?
I found that other applications has read-only access to WindowsApps directory. It is locked in explorer, but you can open files with read functions in your applications such as open().