c# - UWP AppX 安装参数

标签 c# .net uwp windows-installer appx

我开发客户端服务器 UWP 应用程序,我希望管理员通过旁加载(可能使用 WinAppDeployCmd 或 MDM)将其部署到大量设备。 但要启动,我的应用程序需要知道服务器 IP 地址,该地址因每个客户而异。我需要在管理员部署到每台设备期间以某种方式传递此设置。

有没有办法设置远程应用程序设置?或者将 XML 配置文件与 appx 一起传递?或者有其他方法在安装过程中添加一些参数?

最佳答案

与例如MSI,没有选项可以将“初始数据”与安装包一起传递。一种选择是安装软件包,然后添加您的“数据”,例如

  1. 添加AppxPackage foo.appx
  2. appdata = ApplicationDataManager.CreateForPackageFamily(foo_pkg_family)
  3. appdata.LocalSettings.CreateContainer("x").values["y"] = z

第 1 步安装软件包,最值得注意的是它将为用户注册软件包。这将为用户创建包的应用程序数据存储资源。然后,您可以使用 ApplicationDataManager(从 Win32/非 UWP 进程)访问应用程序数据。

您可能会找到AppData.exe便利。一个简单的 exe,使用 ApplicationDataManager 为 AppData 提供 cmdline 接口(interface)。鉴于此或同等内容,您可以编写一个批处理文件

@ECHO Off
powershell -c Add-AppxPackage foo.appx
appdata.exe SET foopkgfamilyname local\configuration --value=x --type=string --data=y

关于c# - UWP AppX 安装参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43358091/

相关文章:

uwp - 如何在不打开UWP应用程序的情况下保持UWP应用程序数据在后台刷新?

c# - 使用 Dapper 获取 nvarchar(max) 返回一个被修剪为 4000 个字符的字符串。这种行为可以改变吗?

c# - 将指向成员的 C++ 指针转换为 C#

c# - 在 C# 中的视频上绘制矩形

c# - 从 ViewModel 在 View 上创建一个自动生成的 DropDownList

c# - System.Threading.Tasks.Task 方法未找到

c# - 如何更改 SelectedItem(在 ListBox 中)的颜色?

c# - jQuery 自动完成、MVC4 和 WebAPI

c# - 长类型的 Lambda 排序

c# - uwp 应用程序(.net native )和未处理的异常