Excel.Application excelApp = new Excel.Application();
以下是Application的定义
using System.Runtime.InteropServices;
namespace Excel
{
[CoClass(typeof(ApplicationClass))]
[Guid("000208D5-0000-0000-C000-000000000046")]
public interface Application : _Application, AppEvents_Event
{
}
}
既然Application属于interface,那么按照我的理解,接口只能实现,不能实例化。
哪位大侠能帮我解释下,走出迷雾?
既然Application属于interface,那么按照我的理解,接口只能实现,不能实例化。
哪位大侠能帮我解释下,走出迷雾?
接口本身是不能直接实例化,但是有继承后重写其中的方法,然后成为一个类才能实例化
上例中是因为你加 Application的接口上加了[CoClass(typeof(ApplicationClass))]
该属性获取原始 coclass 的类标识符。
[CoClass(typeof(ApplicationClass))]
这是比较特殊的东西,是属于COM交互的部分,以CoClass为标记实例化接口,实际实例化的是ApplicationClass
参考:http://www.cnblogs.com/xuneng/archive/2009/05/25/1488941.html