首页 新闻 会员 周边

C#VSTO为啥不能正常调用控件属性

0
[已关闭问题] 关闭于 2016-06-22 05:24

Excel.Shape shape = ((Excel.Worksheet)(tapp.ActiveSheet)).Shapes.AddOLEObject("ShockwaveFlash.ShockwaveFlash.16", null
                , true, false, null, null, null, x, y, 75, 75);

(Boolean)shape.OLEFormat.Object.GetType().InvokeMember("EmbedMovie", BindingFlags.GetProperty, null, shape.OLEFormat.Object, new object[] { });

老是抛出异常" 未知名称。 (异常来自 HRESULT:0x80020006 (DISP_E_UNKNOWNNAME))"

 

但是

Type type = Type.GetTypeFromProgID("ShockwaveFlash.ShockwaveFlash.16");
object obj = Activator.CreateInstance(type, false);
                Boolean b = (Boolean)obj.GetType().InvokeMember("EmbedMovie", BindingFlags.GetProperty, null, obj, new object[] { });

可以正常执行,这是为什么,shape.OLEFormat.Object为啥不能被得到属性?

Jingle Guo的主页 Jingle Guo | 初学一级 | 园豆:134
提问于:2016-06-02 09:25
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册