Windows 7上的PowerBuilder兼容性

问题描述 投票:0回答:2

我在将PowerBuilder应用程序从XP迁移到Windows 7时遇到问题。

我们在Windows XP上的PowerBuilder中构建了应用程序,当我们尝试在Windows 7机器上的组件服务中安装组件时,会出现兼容性错误。一切都在Windows XP上运行良好。但我认为因为7上的DLL是如此不同,它有问题。

如果程序是在Windows 7环境中使用PowerBuilder IDE构建的,那么这可能会解决问题吗?

该申请分为 - 在Server 2003上运行的服务器组件 - 在Win7上成功安装的客户端组件 - 安装服务器组件时生成到MSI中的代理组件。

问题只是代理。 MSI不希望在Windows 7上运行。如果客户端桌面上未安装代理,则客户端无法与服务器通信。

当我在Windows 7上以兼容模式运行MSI时,我会得到一些错误的详细信息。他们来了

发现程序兼容性问题不兼容的应用程序修复应用程序CCS_Proxy_XP_Exports

发现的问题不兼容的应用程序CCS_Proxy_XP_Exports不兼容。

修复应用程序CCS_Proxy_XP_Exports提供修复不兼容应用程序的步骤。 CompatMode CompatMode UserVerifySolution用户验证解决方案Verify_NO

检测详细信息收集信息计算机名称:########## Windows版本:6.1体系结构:amd64时间:2012年11月14日星期三上午11:56:36

发布者详细信息程序兼容性使旧版程序在此版本的Windows中运行。软件包版本:1.5发布者:Microsoft Windows

程序兼容性使旧版程序在此版本的Windows中运行。软件包版本:1.0发布者:Microsoft Corporation

如果我查看有关事件日志的更多详细信息,我会得到以下内容

“产品:客户端通信(应用程序代理) - 错误1928.注册COM +应用程序时出错。有关更多信息,请联系您的支持人员。“

migration powerbuilder powerbuilder-build-deploy
2个回答
0
投票

大概的概念

实际上win7平台上的dll与以前的没有什么不同。可能存在与现在存在于WinSxS dll-hell目录中的多个和不同C运行时相关的差异,但这不应该影响powerbuilder(正如我可以从我的11.5经典版本体验中所说)。

我怀疑您可能遇到与UAC和/或ACL管理相关的一些问题。我最近通过增加Vista / Win7规范的兼容性来升级一些传统的PB应用程序。

简而言之:应用程序必须在不需要管理权限的情况下运行,并且不得尝试修改c:\c:\windows等特权位置的数据。

因此,不能再在program files目录中安装所有内容。应用程序二进制文件可以部署在program files中,但如果应用程序需要创建/修改某些文件,则必须将它们部署在用于用户共享数据的ProgramData子目录中和/或用于私有数据的本地用户数据文件中。必须修改应用程序才能在正确的目录中创建或查找文件。如果您不遵守该标准,文件虚拟化机制可以隐藏权限的缺失,并且可以模拟用户本地数据中VirtualStore目录中的文件,但这只是一种解决方法,它还提供了一些其他问题。

带+错误

鉴于您的错误消息,如果代理也是PB应用程序,假设PB只生成32位二进制文​​件并且您的系统是64位一个,那么register a 32b COM+ onto a Win2008的提示可能对您有帮助吗?


0
投票

以为,您的代理exe / dll文件没有清单或清单不包含兼容性部分。尝试将compatibility info添加到清单中。

© www.soinside.com 2019 - 2024. All rights reserved.