3

我已经从回收的硬盘复制(未安装)使用 Powerbuilder 开发的系统。我想运行该应用程序,但当然,它需要几个 DLL 和类似的东西,它们没有在我当前的系统中注册。

我的问题:是否有安装“powerbuilder 运行时”的程序,也就是说,为了运行应用程序?

4

6 回答 6

4

所以,你的问题有几个部分。第一个是定义所需的 DLL 列表。“应用程序技术”手册将引导您了解应用程序的要求(例如,您是否使用富文本控件?)并让您构建所需 DLL 的列表。如果您的硬盘驱动器或 CD 上没有该手册,您可以从Sybase 手册站点获取它,查看 PB8 的存档产品。

接下来,您询问是否必须做任何特别的事情来“注册”DLL。答案是,从技术上讲,不。关键是当应用程序“询问”DLL 时,Windows 必须能够“找到”它们。开发人员经常会将 DLL 与应用程序放在同一目录中,并希望之后一切顺利。微软倡导者在注册表中使用 App Paths。只需打开 RegEdit 并在“应用程序路径”上查找示例。这很简单,只是一个以分号分隔的目录列表。Windows 会先搜索此列表,然后再将其移至其他任何位置。创建此条目并将您的 DLL 放在这些目录之一将确保 Windows 可以找到您的 DLL。(您可以从仅 Microsoft 的参考资料中看出,这是通用的 Windows,而不是特定于 PB 的。对于一般 Windows 故障排除来说,这是一个很好的知识。)

祝你好运,

特里。

于 2010-05-13T20:00:25.090 回答
3

诚然,我对 PowerBuilder 一无所知,但我会尝试Dependency Walker来查看程序需要哪些 dll。

于 2010-05-13T01:09:21.013 回答
2

两个问题。

  1. 该应用程序是用哪个版本的 Powerbuilder 编写的?

  2. 根据错误消息,给我们一个缺少的 DLL 列表。

在大多数情况下,DLL 存在于应用程序目录中,但它们也可能存在于 Windows\System32 目录中。

列出丢失的 DLL 并搜索旧硬盘以查看是否可以找到它们。如果是这样,请将它们复制到新的应用程序目录并再次尝试该应用程序。

于 2010-05-13T20:15:59.330 回答
0

我有 PB 12.0,我试图让运行时打包程序工作(您需要为此安装 Powerbuilder)。我尝试了一切(除了明显有效的方法)。

Sybase 想要一个技术支持许可证,这又是 PB 的价格,所以我想通了。

/ * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * *** * \

我必须安装 PB Eval 版本才能使应用程序正常工作。我不需要许可证,它可能会过期并仍然运行。

** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** /

这特别有用,因为我是一家拥有 30 个使用我的程序的工作站的公司的开发人员。我只需要安装并忘记一个已失效的 PB(当然是相同的 12.0 版本)。这是我让它工作的唯一方法。

于 2013-01-31T17:51:32.647 回答
0

我很久没有做过 PB(PB 6.5/7/8 天),但当时的运行时间非常简单。您有一些 Win32/PE Dll(没有 COM),您可以使用您的应用程序私下部署它们。几个总是需要的,几个取决于您创建的对象(ODCB 与 PB 原生数据库驱动程序、RichText 控件等)。分析应用程序并查看它正在寻找的 DLL 总是很容易的。

现代版本的 PB 似乎正在跨入 .NET 世界,因此您可能必须安装 .NET 框架。如果是这样,3.5SP1 可能是一个安全的赌注。

这是我可以给出的最佳答案,而无需实际拥有您的应用程序副本和 PB 副本。

于 2010-05-13T00:00:15.850 回答
0

安装 Powerbuilder 将添加丢失的 dll,这就是您的问题似乎已解决的原因。如上所述,每个 PB 安装都可能需要许可。一个选项可以是让每个工作站直接从服务器位置运行应用程序。为此,我建议在工作站桌面上设置一个图标。请注意,以这种方式运行应用程序可能会导致速度问题。PB 应用程序在应用程序文件夹中查找 dll。发现任何缺失时会显示错误消息。为丢失的 dll 运行 Google 搜索。通常,您会在网上找到一份副本。

于 2018-11-06T08:32:15.807 回答