【发布时间】:2015-03-04 22:22:55
【问题描述】:
我们有旧版 VB6 应用程序,我们正在尝试将其移至 C#。作为第一阶段,我们在 C# 中创建了启动表单(具有类似的控件),并希望这个 C# 应用程序与 VB6 启动表单进行通信,以便当用户单击 c# 表单时,它将在 VB6 启动表单上启动按钮单击事件(我们希望它被隐藏) 他们都共享同一个数据库,有人可以给我一个关于我们如何实现这一目标的想法,或者有没有其他方法。谢谢
【问题讨论】:
-
所以我有几个问题,但会尽量保持简短和简单.. 1. VB6 遗留代码是否可以转换为 C# 或 VB.NET 2. 如果您可以将代码转换为 VB .NET 你仍然可以通过将
using Microsoft.VisualBasic添加到 C# 类标题来引用 VB.Net 程序集......如果这不是一个选项,那么我会查找如何导出 dll 函数或谷歌如何在 C# 中调用 vb6 dll跨度> -
当您尝试停用 VB6 应用程序时,为什么要保留它并尝试控制它?如果有一些复杂的业务逻辑,您可以将其移至单独的 VB.net 程序集,然后从您的 c# 应用程序中引用它。将代码从 VB6 迁移到 VB.net 已被广泛记录,这取决于原始代码,是一个艰难的前进过程。我的建议是要么真的退出应用程序/扔掉它,要么保留它,但不要开始混合它......
-
几年前我们也面临同样的挑战:我们决定将其做成一个混合应用程序:我们将 VB6 应用程序做成一个 dll(好吧,5 个 dll),而此时我们只有一个空的 C#“启动”表单。一个表格一个表格,我们从头开始写新的。困难但可能(最重要的开始提示:使 C# 成为目标 x86)
标签: c# vb6 vb6-migration