【发布时间】:2011-11-07 03:49:22
【问题描述】:
我已经接管了一个旧应用程序并创建了 exe。如果我可以配置 BDE,那么理论上应该可以运行它。有人指出需要安装 Delphi 才能运行应用程序。我不确定——这对我来说不太有意义,因为有一个 exe 文件。德尔福专家的任何意见将不胜感激。
罗迪
【问题讨论】:
我已经接管了一个旧应用程序并创建了 exe。如果我可以配置 BDE,那么理论上应该可以运行它。有人指出需要安装 Delphi 才能运行应用程序。我不确定——这对我来说不太有意义,因为有一个 exe 文件。德尔福专家的任何意见将不胜感激。
罗迪
【问题讨论】:
如果应用程序使用 BDE,则必须先安装 BDE,然后才能运行 exe。 BDE 文件未链接到 exe。
Delphi 安装通常也会安装 BDE。这可能给人的印象是必须安装 Delphi 才能运行 exe,但事实并非如此。
根据部署许可证,您必须使用 Delphi 附带的 InstallShield Express 之类的工具来为 BDE 创建一些设置,但我在这里可能会被误导。您甚至可以尝试在 Google 上搜索 BDE 安装程序或查看 this question。
【讨论】:
您的应用程序应该可以在不安装 Delphi 的情况下运行如果它不是为使用运行时包(BPL 文件)而构建的。
如果它是为使用运行时包而构建的,则您需要将它们与您的应用程序一起部署。由于所有 delphi 的运行时包都是随 Delphi 一起安装的,这可能会给人一种印象,即应用程序需要安装 delphi 才能运行,但事实并非如此。
但是,您可能需要安装 delphi 来检索所需的 BPL 文件。
BPL 文件是 delphi 可以引用的特殊 DLL 文件,而不是将所有代码链接到 .Exe 中,从而使 EXE 文件更小。
因此,如果您设法启动 BDE,在其中创建正确的别名,并获得所有必需的 BPL(如果有),则应用程序应该正确启动。
最后一个可能需要与您的应用程序一起部署的东西是 midas.dll。 (如果应用程序使用,例如,Tclientdataset)
暂时能想到的就这些了……
【讨论】:
在我看来,需要安装 Delphi 才能运行您的应用程序,这让我觉得很尴尬。也许您的应用程序是使用运行时包构建的,这意味着您必须包含应用程序所依赖的 bpl,但不应需要 Delphi 本身。
您可以自己测试,只需在未安装 Delphi 的计算机上运行该应用程序即可。当它给出关于未找到 bpl 的错误时,您必须找到该 bpl 并将其添加到您的应用程序所在的目录中。
【讨论】:
Uwe 在这里有答案。如果您的应用程序使用 Delphi 提供的任何数据组件,则几乎总是需要安装 BDE 和其他驱动程序,例如,如果您与 Oracle 通信,则必须安装 Oracle OCI 驱动程序。
您不需要 Delphi 来安装 BDE,但您需要找到 BDE 安装程序并安装它。那里的许多程序都使用 BDE,而不仅仅是 Delphi,因为它已获得许多公司的许可。
【讨论】: