使用 c sharp 在点网环境中运行本机 Delphi 代码 [关闭]
Posted
技术标签:
【中文标题】使用 c sharp 在点网环境中运行本机 Delphi 代码 [关闭]【英文标题】:Running native Delphi code in dot net environment with c sharp [closed] 【发布时间】:2013-04-05 14:06:48 【问题描述】:我有一个 Delphi 程序,主要由可视界面(按钮、文本框等)和一些业务逻辑组成。
业务逻辑大多包含在 Delphi 运行的Oracle Database
的Pl-Sql
中。
我想将 Delphi 中的项目带到 C Sharp,但我想逐步完成。
我的想法是在 Visual Studio 中创建一个 C Sharp 项目并使用 Delphi 代码(包括 Visual Interfaces)运行它,并用 C Sharp 部分替换 Delphi 中的代码和 Visual Interface。
有可能吗?
【问题讨论】:
您确实需要定义和详细说明您想要实现的目标;您是要将现有的 delphi 应用程序转换为 C# 还是仅仅从 C# 应用程序执行 delphi 应用程序? 你真的应该看看Migrating a Delphi 7 application to .NET的答案。无论您处理的是什么版本的 Delphi(好吧,无论如何都是 win32/VCL Delphi)或 VS,答案都是一样的。 我想将 Delphi 应用程序转换为 C Sharp,但很难在短时间内实现,而且我没有时间在 Delphi 和 C Sharp 中同时运行一个项目。所以我认为在.net中运行Delphi代码并将Delphi代码逐个模块替换为C Sharp代码模块是可行的。 【参考方案1】:在同一个应用程序中混合 Delphi 和 C# GUI 是可能的,但很难实现。您需要建立一个完整的基础架构来组织两种语言之间的互操作。您最终将创建大量的互操作代码,随后您将放弃这些代码。更糟糕的是,互操作代码需要有两种方式。有时你会看到 C# 可视化代码与 Delphi 非可视化对话。反之亦然。逐个模块转换代码模块的想法听起来不错,但我预测这将需要大量的互操作脚手架。
沿着视觉/非视觉划分会更容易,但这不是您的建议。所以坦率地说,我认为你目前的计划远非最佳。我不会娱乐它。我认为干净的端口是最好的选择。
【讨论】:
【参考方案2】:Remobjects Hydra 似乎正是您想要的。
【讨论】:
以上是关于使用 c sharp 在点网环境中运行本机 Delphi 代码 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
在 AWS Lambda 函数中运行 Sharp 时出错:darwin-x64' 二进制文件不能在 'linux-x64' 平台上使用