【发布时间】:2021-11-27 15:25:13
【问题描述】:
我一直在研究 .NET Core COM 互操作和how to expose them。
虽然我在得出结论和理解一些概念时遇到了一些问题。 我的老板告诉我他们做了一些测试,他们认为创建可以从 VB6(包括事件)中调用的 C# 代码的唯一方法是创建一个 .NET Framework 项目,因为它在 .NET Core 3.1 中不可用(在他们必须使用此功能的那一刻)。
但是看到前面提到的页面并进行了更多研究,我确实认为 .NET Core 似乎支持这种互操作性。而且我不明白为什么 .NET Core 平台无法做到这一点。
如果这个问题不属于这里,我很抱歉,但是有人可以解释一下这个问题吗?
【问题讨论】:
-
只要付出足够的努力,一切皆有可能。你为什么想要? VB6 是一种死语言。不只是大部分都死了,它是检查口袋里的零钱死了。
-
无论如何,你需要更具体一些。你尝试过什么,结果如何?包括您收到的任何错误消息。
-
等等,你想从 VB6 调用一些 .NET 代码吗?甚至不是.NET的VB6?是的,不要那样做。我想这是可能的,但有些事情你真的不应该做。 VB6 是在 20 多年前推出的,从那时起事情就发生了变化。甚至 VB.NET 自 2002 年以来就已经存在,我认为它不会与 .NET 核心兼容
-
@Neil 我真的不想这样做,但我工作的公司的主要产品完全是用 VB6 编码的,他们需要我这样做......所以我就是想知道这个。他们过去已经使用了一些来自 VB6 的 .NET Framework 项目。但如果它仍然看起来超级不可能,那么我就会忘记它。谢谢你的回答!
-
VB6 只对那些不需要支持它为生的人来说是死的(而且不一定要选择“更好”的东西)。长期以来,对于许多开发人员 (IMO) 而言,逐渐将部分 VB6 应用程序迁移到 .NET - 或在那里制作新组件 - 非常普遍。
标签: c# .net com vb6 com-interop