使用 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 DatabasePl-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 代码 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

从点网运行 Matlab 代码

从多项目点网核心解决方案构建 Docker 映像

如何在 Web App 和 C Sharp 之间进行通信

java和c sharp哪个写上位机最好

C# RTSP 和 VLC 点网

在 AWS Lambda 函数中运行 Sharp 时出错:darwin-x64' 二进制文件不能在 'linux-x64' 平台上使用