奇怪的安装错误
回答
该诊断表明本机CreateWindowEx()API函数失败。它失败的原因很少,最常见的是窗口窗口过程中的严重错误。这当然不是Form类的情况,我只见过Windows Forms程序因此错误而失败,因为该进程超出了它的句柄配额。
为了解释这将需要一些挥手。首先,默认情况下,Windows进程只允许创建10,000个句柄,GDI对象和user32对象。你的程序当然不太可能在启动时消耗很多。然而,当安装程序启动时发生这种情况是主角。 Msi.exe得到特别的分配,允许创建更多的句柄。我已经看到它这样做,我运行在一个旧的未打补丁版本的XP上的VS2008 Service Pack 1安装程序在启动它之后大约两个小时,在它确定需要重新启动以完成安装之前,已经处理了500,000个句柄。
您的安装程序将使用CreateProcess()来启动程序。它有一个名为bInheritHandles的参数,用于确定子进程是否继承父进程的句柄。因此,可能的情况是安装程序使用多个句柄,并且它将bInheritHandles参数设置为TRUE。然后你的WF程序将以其已经超过的句柄配额开始,创建另一个句柄将失败。 SetVisibleCore()方法确实是创建主窗体的Handle属性的方法。
这是当然所有的猜想,当进程显示异常对话框时,您应该能够使用Taskmgr.exe,Process选项卡查看自己。使用视图+选择列并勾选句柄,GDI对象和USER对象。最终的解决方案是要找出安装程序为什么要消耗这么多的手柄。或者使用不同的方式来启动程序。
嗯。我可能不得不多看这些,因为错误信息只发生在某些机器上。感谢您的建议。 – broke 2010-02-11 17:11:49
问题通常是以下一种:
不是所有的组件都安装:确保所有第三方组件和其它先决条件包括在您的安装程序,并得到正确的设置。这包括COM对象,运行库等。
配置差异:确保您在设置中包含所有相关配置。
32位与64位的问题:如果你的代码必须依赖于你需要设置的x86平台的目标进行编译原生32位库/ COM组件
功能不支持该平台
问题海拔(也更不可能在你的情况有点为你似乎是在XP)
我的感觉告诉我,您可能使用某些第三方控件在应用程序中显示报告。你确定这些控件安装在目标机器上吗?
- 1. Zope:奇怪的“无法安装”错误
- 2. Python中安装Psyco的奇怪错误
- 3. 奇怪的错误安装GLIB
- 4. pip安装cssselect奇怪的错误
- 5. 安装我的宝石时出现奇怪的错误
- 6. 无法安装iOS 7.1模拟器(奇怪的文件安装错误)
- 7. 奇怪的History.js安全错误
- 8. 弹簧安全 - 奇怪的错误
- 9. 使用CUDA7.5和Ubuntu 16.04安装OpenCV3.1有奇怪的错误
- 10. 试图在Ruby 2.1上安装Nokogiri,出现奇怪的错误
- 11. 安装freeglut后出现奇怪的编译错误
- 12. 无法安装grunt-contrib-imagemin(奇怪的错误1)
- 13. 试图安装firebase-tools并得到一个奇怪的错误
- 14. 安装后Sass and Compass出现奇怪的css错误
- 15. 安装Android应用时出现奇怪的错误?
- 16. 无法在Mac上安装npm 10.6.4奇怪的错误
- 17. php作曲家窗口安装奇怪的目录错误
- 18. 奇怪的错误,帮助朋友安装apsw
- 19. 尝试在Mac上安装npm时发生奇怪的错误
- 20. 奇怪的良性Node.JS错误/警告当我安装
- 21. 奇怪的错误安装在Mac OS mechainze宝石时
- 22. Cabal Cabal安装不起作用,奇怪的错误
- 23. SourceTree安装行为奇怪
- 24. 奇怪的错误
- 25. 奇怪的错误
- 26. 奇怪的错误
- 27. 奇怪的错误
- 28. 奇怪的错误
- 29. 奇怪的错误
- 30. 奇怪的错误
您能否以文字形式发布错误消息详情?这将使它能够完全阅读它并可能帮助其他人找到相同的问题来找到这个页面。 – 2010-02-11 14:54:19
你能告诉我们你如何“部署”它吗?什么构建安装程序以及如何运行部署? (例如,点击一次?安装屏蔽等...)。谢谢。 – 2010-02-11 14:57:47
错误在什么时候出现?立即在启动?如果是这样,你能总结一下你在应用程序启动时所做的事情吗? – 2010-02-11 14:59:32