您好我是wpf应用程序开发的新手,并且正在搜索部署技术以部署和更新我的WPF应用程序,但我无法找到任何能够清除我的要求的内容。
要求是:
1)设置程序文件的默认路径或允许客户端选择安装路径位置
2)通过静默模式更新wpf应用程序或在我的wpf应用程序上提供更新按钮。
我尝试过的部署技术限制:
ClickOnce
:客户无法选择安装路径
Windows Installer
:它不支持针对wpf应用的更新程序。
Squirrel
:我也无法选择安装位置。
以上是我通过Google搜索获得的资源,以达到部署wpf应用程序的要求。
是否有任何技术支持我部署和更新WPF应用程序的要求(这些可能是错误的,请提及,如果有的话)
答案 0 :(得分:2)
WiX toolset是一个可靠的部署选项,它已经成熟,它已被广泛使用,并且作为奖励它是免费的。
它有一个学习曲线,但从长远来看,它在我看来是值得的。查看专为WPF应用量身定制的official tutorial或this one。
关于您的要求:
1)设置程序文件的默认路径或允许客户选择 安装路径位置
WiX提供各种标准UI。如果您只需要自定义安装目录,则可以使用“WixUI_InstallDir”。查看this page了解更多选项。
2)通过静默模式更新wpf应用程序或提供更新 我的wpf应用程序上的按钮。
如果您的应用是中小型(例如< 100MiB),请将更新部署为MajorUpgrade。 MajorUpgrade始终包含完整安装程序,它将自动卸载以前的版本,然后安装新版本。当然,您可以在静音模式下执行此操作:
msiexec.exe -qn -i YourInstaller.msi
或者,您可以使用API(MsiSetInternalUI,MsiInstallProductW):
MsiSetInternalUI(INSTALLUILEVEL_NONE, NULL);
UINT result = MsiInstallProductW(L"YourInstaller.msi", L"");
要更新真正重要的应用程序(如Visual Studio),您需要创建一个patch,但对于中小型应用程序来说,这不值得麻烦。