MsiInstallProduct 和 Installer.InstallProduct 之间的区别?
这两者有什么区别?
MsiInstallProduct 和 Installer.InstallProduct。根据我的阅读,唯一的区别是第一个返回一个 int 来指示安装是否成功。
我目前正在使用 DTF (WiX) 调用 Installer.InstallProduct
。问题是,该函数的返回类型为 void。
问题: 通过DTF调用Installer.InstallProduct
时如何判断安装是否成功?
What's the difference between these two?
MsiInstallProduct and Installer.InstallProduct. From what I've read, the only difference is that the first returns an int that will dictate if the installation succeeded or not.
I am currently using DTF (WiX) to call Installer.InstallProduct
. The problem is, this function has a return type of void.
Question:
How can I determine if the installation succeeded or not when calling Installer.InstallProduct
via DTF?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
正如您所注意到的,MsiInstallProduct 仅返回错误或成功,没有进一步的信息。 Installer.InstallProduct 不返回任何内容。 DTF 不返回任何内容。
为什么有区别? MsiInstallProduct 是老式 C/C++,您可以在其中返回错误代码。其他都是新学校,你可以提出例外。然后您的代码捕获异常以知道存在问题。
As you noticed, MsiInstallProduct simply returns error or success with no further information. Installer.InstallProduct returns nothing. DTF returns nothing.
Why the difference? MsiInstallProduct is old school C/C++ where you return error codes. The others are new school where instead you raise exceptions. Your code then catches the exception to know that there was a problem.