当前位置:  开发笔记 > 编程语言 > 正文

如何从C/C++调用.NET程序集?

如何解决《如何从C/C++调用.NET程序集?》经验,为你挑选了2个好方法。

假设我正在用C++和C#编写应用程序.我想用C++编写低级部分并在C#中编写高级逻辑.如何从我的C++程序加载.NET程序集并开始调用方法并访问我的C#类的属性?



1> Kevin..:

你应该真正研究C++/CLI.它使这样的任务几乎无足轻重.

否则,您将必须围绕C#代码生成COM包装器,并让您的C++应用程序调用COM包装器.



2> Francis B...:
[Guid("123565C4-C5FA-4512-A560-1D47F9FDFA20")]
public interface IConfig
{
    [DispId(1)]
    string Destination{ get; }

    [DispId(2)]
    void Unserialize();

    [DispId(3)]
    void Serialize();
}

[ComVisible(true)]
[Guid("12AC8095-BD27-4de8-A30B-991940666927")]
[ClassInterface(ClassInterfaceType.None)]
public sealed class Config : IConfig
{
    public Config()
    {
    }

    public string Destination
    {
        get { return ""; }
    }

    public void Serialize()
    {
    }

    public void Unserialize()
    {
    }
}

在那之后,你需要重新装配你的装配.Regasm将添加必要的注册表项,以允许您的.NET组件被视为COM组件.之后,您可以使用与其他任何COM组件相同的方式在C++中调用.NET组件.

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有