c/c++(NaitveCode)和c#(Addins)本身是两种完全不同的语言,除了您表面看到的语言语法不一样以外,编译后的dll包含的内容,以及dll运行时的环境都完全不同,具体您可以使用搜索引擎查一下,网上相关资料很多的。而Addins没有生成ma,实际您在加载Addins的程序集的时候后台会临时生成一个ma文件,您可以在Run函数里边把传递进来的参数显示出来看一下,其包含了临时生成的ma文件的路径。至于C++程序调用C#的dll,您说的应该是c++/cli混合编程,相当于编译后的dll既包含NativeCode的dll…