如何从mono中的c++中获得某个类中所有方法的列表

本文关键字:有方法 列表 mono 中的 c++ | 更新日期: 2023-09-27 18:20:53

我已经使用加载了程序集"monoass.dll"

mono_domain_assembly_open(domain, "C:/monoass.dll");

然后我用找到了名为"MainClass"的类

mono_class_from_name(mono_assembly_get_image(ass), "monoass", "MainClass"); // where "monoass" is the name of namespace

那么我需要在"MainClass"类中查找所有方法作为MonoMethod**数组。我该怎么做?

Mono版本为:Mono-3.23

其他问题:

1) 如何将MonoMethod的名称、参数和返回值输出到控制台?是否有mono_method_to_string(MonoMethod*方法)函数?

2) 如何获取程序集中的所有名称空间(并将每个名称打印到控制台),然后为每个名称空间获取名称空间中所有类的数组?

如何从mono中的c++中获得某个类中所有方法的列表

您可以获得以下所有方法:

void* iter = NULL;
MonoMethod* method;
while(method = mono_class_get_methods(mono_class, &iter))
{
    cout << mono_method_full_name(method, 1);
}
相关文章: