我开发客户端服务器 UWP 应用程序,我希望管理员通过旁加载(可能使用 WinAppDeployCmd 或 MDM)将其部署到大量设备。 但要启动,我的应用程序需要知道服务器 IP 地址,该地址因每个客户而异。我需要在管理员部署到每台设备期间以某种方式传递此设置。
有没有办法设置远程应用程序设置?或者将 XML 配置文件与 appx 一起传递?或者有其他方法在安装过程中添加一些参数?
最佳答案
与例如MSI,没有选项可以将“初始数据”与安装包一起传递。一种选择是安装软件包,然后添加您的“数据”,例如
- 添加AppxPackage foo.appx
- appdata = ApplicationDataManager.CreateForPackageFamily(foo_pkg_family)
- 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/