2011-05-10 77 views
1

我试图使用由包和部署向导(在Win 2003上创建的安装程序)创建的安装程序来安装VB应用程序。安装程序安装正常,我发现依赖项(ocx和dll文件)安装在sysWOW64文件夹中,而不是system32文件夹(因为该应用程序是32位)。但是,当我运行该应用程序时,它无法找到ocx或dll依赖项。我错过了什么?在Win 2008 R2上使用VB6打包和展开向导注册.OCX和DLL文件

+0

请考虑切换到Inno Setup或NSIS;没有人在现代操作系统上部署应用程序应该使用古代PDW。通过Process Explorer观看安装程序,是否正确启动了regsvr32? – 2011-05-10 20:25:05

+0

InnoSetup是一个传统脚本安装程序,与PDW不同。 Regsvr32不应该用于部署,创建一个MSI包可以更好地处理组件注册。有关自注册的注意事项,请参阅http://msdn.microsoft.com/en-us/library/aa371608(VS.85).aspx。 – Bob77 2011-05-13 01:05:00

回答

0

您的setup.exe是否触发了高程?

有可能最终在虚拟位置进行每用户注册,而不是通常预期的HKLM注册。

您是否使用过RegEdit进入并检查了注册条目?

0

尝试调整您的EXE应用程序兼容性..,右键点击则appliacation DN转到兼容性检查运行该程序在兼容模式,并检查以管理员身份运行..,

如果问题仍然过度拖动并将dll/ocx删除到system32文件夹中的regsvr32

0

这可能与安装程序运行时使用的权限和特权有关。

只需使用基于MSI的现代安装程序,如Installshield。它会为你节省很多麻烦。