我有一个DLL,它的ComVisible属性可能被设置为true,也可能没有。我不知道它是怎么建的,或者有什么属性?我只知道这是一个.Net动态链接库。简单地说,我如何知道它是否是可见的?
对不起,如果这是一个副本。我对此返回结果的所有搜索都显示了如何生成DLL ComVisible。我知道怎么做。
发布于 2013-04-04 20:44:54
可以使用反射检查程序集的ComVisibleAttribute:
private static bool IsComVisible(string assemblyPath)
{
var assembly = Assembly.LoadFile(assemblyPath);
var attributes = assembly.GetCustomAttributes(typeof(ComVisibleAttribute), false);
if (attributes.Length > 0)
{
return ((ComVisibleAttribute)attributes[0]).Value;
}
return false;
}发布于 2013-04-04 20:44:32
像这样吗?
Assembly asm = Assembly.GetExecutingAssembly(); //Assembly.LoadFile, Assembly.Load
bool comVisible = asm.GetCustomAttributes()
.OfType<ComVisibleAttribute>()
.First()
.Value;https://stackoverflow.com/questions/15820944
复制相似问题