在 C# 中使用 VB6 类
是否可以在 C# 中使用 VB6 类?
Is it possible to use a VB6 class in C#?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
是否可以在 C# 中使用 VB6 类?
Is it possible to use a VB6 class in C#?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
我认为您应该能够添加包含 VB6 类型的库作为 C# 项目中的引用。 Visual Studio 将动态创建 Interop 程序集,您可以通过 运行时可调用包装器。
创建互操作程序集的工具是 TLBIMP.EXE,如果您想更好地控制该过程,您可以自己运行它,例如。如果您想创建一个可能由多个共享的主互操作程序集托管组件。
I think you should just be able to add the library that contains your VB6 type as a reference in your C# project. Visual Studio will create an Interop Assembly on the fly, and you'll get access to all of the types in the VB6 library via Runtime Callable Wrappers.
The tool that creates the Interop Assembly is TLBIMP.EXE, and you can run this yourself if you want more control over the process, eg. if you want to create a Primary Interop Assembly that might be shared by multiple managed components.
您可以通过使用 COM Interop 在 C# 程序中使用已编译的 VB6 dll。
https://stackoverflow.com/questions/tagged/interop
You can use a compiled VB6 dll in a C# program by using COM Interop.
https://stackoverflow.com/questions/tagged/interop
正如 @Wayne 在他的帖子 (+1) 中所述,这绝对是可能的。
我会重写您的 VB6 类:
如果您有 VB6 源代码和资金,我建议您用 C# 重写该类。
尽管 VB6 可能永远存在:
Visual Basic 6.0 当前支持声明
As @Wayne states in his post (+1) it is absolutely possible.
I would go for a rewrite of your VB6 class:
If you have the VB6 source and the funding, I would recommend you to rewrite the class in C#.
Although VB6 may live forever :
Current support Statement for Visual Basic 6.0
当然,您只需将其设为 COM 对象即可。
Sure, you just need to make it a COM object.