windows - 如何更改 msix 包的安装位置?

标签 windows visual-studio packaging appx msix

我有一个 WPF 应用程序,我计划使用 Visual Studio 中的 Windows 应用程序打包项目进行部署,该项目为安装和 future 的更新制作 MSIX 包。安装程序会自动将应用程序安装在 C:\Program Files\WindowsApps 中。这很好,直到程序需要缓存一些数据或需要修改 appsettings 文件,因为应用程序没有权限访问这些资源。

是否有我可以在包装属性/ list 中更改的设置,以便它可以安装在其他地方,从而避免这些问题?

最佳答案

确实,只有 Windows 可以在安装 msix 包时写入 %ProgramFiles%\WindowsApps(按设计)。如果您的应用正在安装文件夹中写入日志文件或其他数据,它将崩溃。

您需要更新代码以写入 %AppData%,或者如果您无权访问代码,请使用包支持框架 修复它。您可以在此处阅读更多信息: Package Support Framework (aka PSF)

PSF 带来了对 API 重定向和 Hook 的支持。因此,您可以修复未能在安装文件夹中写入文件的应用(不再允许这样做)并将其重定向到推荐的位置,或者可能只是更新应用的工作目录。

关于windows - 如何更改 msix 包的安装位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65927469/

相关文章:

deployment - 打包和部署 Scala 应用程序

.net - 如何在 Visual Studio 2022 中创建物理文件夹

visual-studio - VS 2010 RC 什么时候发布?

c# - Visual Studio : The Operation could not be completed. 参数不正确

maven-2 - 如何在 maven 的单个 jar 中添加所有依赖项,然后应用程序集插件?

用于启用单元测试的Python包结构('Parent module not loaded'错误)

node.js - Angular cli 不适用于 Windows 10

windows - Ghostscript:Linux 和 Windows 版本之间有什么区别?

c - 在 C 中打开应用程序

c++ - C++ 中的 CLI : cin and Ctrl+C