Autofac无法解析Microsoft.Office.Interop.Word.Application
创始人
2024-11-12 12:00:35
0

Autofac无法识别COM对象,因此我们需要使用一种不同的解决方案。我们可以使用COM互操作性扩展,其中包括绑定到COM对象并对其进行操作的类。

下面是使用COM互操作性扩展实现的代码示例:

首先,我们需要将Microsoft.Office.Interop.Word程序集引用添加到项目中,并添加对InteropServices命名空间的引用:

using System.Runtime.InteropServices;

然后,我们定义Word应用程序类并将其绑定到COM对象:

[ComImport] [Guid("000209FF-0000-0000-C000-000000000046")] [CoClass(typeof(ApplicationClass))] public interface Application : _Application, AppEvents_Event { }

[ComImport] [Guid("00020970-0000-0000-C000-000000000046")] [TypeLibType(TypeLibTypeFlags.FDispatchable)] [ComVisible(true)] public interface ApplicationClass : _Application, Application { }

[ComImport] [TypeLibType(TypeLibTypeFlags.FDual | TypeLibTypeFlags.FDispatchable | TypeLibTypeFlags.FHidden)] [Guid("00020970-0000-0000-C000-000000000046")] [ComVisible(true)] public interface _Application { [DispId(23)] Documents Documents { get; }

[DispId(34)]
void Quit();

}

接下来,在程序中创建Autofac容器并注册我们的Word应用程序类:

var builder = new ContainerBuilder(); builder.RegisterType().AsSelf(); var container = builder.Build();

最后,我们可以在需要使用Word应用程序的地方解析它:

using (var scope = container.BeginLifetimeScope()) { var word = scope.Resolve(); // 对Word应用程序进行操作 word.Quit(); }

这样,我们就可以成功地使用Autofac解析Microsoft.Office.Interop.Word应用程序了。

相关内容

热门资讯

传递经验!wepoker的辅助... 传递经验!wepoker的辅助器,wepoker能不能透视,攻略教程(有挂透明);亲真的是有正版授权...
三分钟了解!wepoker有没... 三分钟了解!wepoker有没有挂,wpk私人辅助,德州论坛(有挂透明);1分钟了解详细教程(微信 ...
盘点十款!约局吧如何查看是否有... 盘点十款!约局吧如何查看是否有挂,安装不了wepoker,规律教程(有挂软件);大神普及一款德州ai...
必备辅助推荐!hhpoker是... 必备辅助推荐!hhpoker是内部控制吗,红龙poker辅助,揭秘攻略(有挂技巧)1、不需要AI权限...
我来教教你!hhpoker到底... 我来教教你!hhpoker到底可以作弊码,wepoker私人局辅助,教你教程(有挂透视);人气非常高...
终于清楚!wpk透视是真的假的... 终于清楚!wpk透视是真的假的,aapoker透视插件,玩家教你(有挂透视)1、玩家可以在wpk透视...
必备攻略!wepoker轻量版... 必备攻略!wepoker轻量版有透视吗,来玩app破解版,2025新版(有挂软件);1.wepoke...
玩家必备攻略!德州局透视,德州... 玩家必备攻略!德州局透视,德州局脚本,科技教程(有挂攻略);最新版2024是一款经典耐玩的益智游戏,...
盘点一款!wepoker透视底... 盘点一款!wepoker透视底牌脚本,hhpoker有辅助吗,总结教程(有挂教程);玩家必备必赢加哟...
一分钟了解!wepoker有机... 一分钟了解!wepoker有机器人吗,wepoker好友局透视,2025新版教程(有挂透明)1、很好...