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应用程序了。

相关内容

热门资讯

七分钟开挂!潮友会鱼虾蟹破解,... 七分钟开挂!潮友会鱼虾蟹破解,丫丫老陕开挂,系统教程-2026最新版本1、上手简单,内置详细流程视频...
在玩家背景下!天天福建十三兵修... 在玩家背景下!天天福建十三兵修改器(辅助挂)果然确实有挂(有挂方针)-哔哩哔哩 【无需打开直接搜索加...
四分钟开挂!皮皮衡阳字牌黑科技... 四分钟开挂!皮皮衡阳字牌黑科技视频,吉祥填大坑攻略,教你攻略-2026最新版本1、打开软件启动之后找...
目前来看!hhpoker有没有... 目前来看!hhpoker有没有作比(辅助挂)果然确实有挂(有挂办法)-哔哩哔哩;无需打开直接搜索微信...
第7分钟开挂!微信边锋辅助软件... 第7分钟开挂!微信边锋辅助软件,小南娱乐科技,微扑克教程-2026最新版本1、任何微信边锋辅助软件a...
有消息称!吉祥填大坑有什么诀窍... 有消息称!吉祥填大坑有什么诀窍(辅助挂)果然真的是有挂(有挂操作)-哔哩哔哩>>您好:软件加薇136...
1分钟开挂!微乐河南小程序微乐... 1分钟开挂!微乐河南小程序微乐辅助脚本,微信边锋辅助,爆料教程-2026最新版本1、打开软件启动之后...
此事备受玩家关注!微信小程序财... 此事备受玩家关注!微信小程序财神十三章特殊牌(辅助挂)原来真的有挂(有挂指南)-哔哩哔哩,微信小程序...
第九分钟开挂!新玄龙辅助工具,... 第九分钟开挂!新玄龙辅助工具,乐乐围棋入门辅助,微扑克教程-2026最新版本1、上手简单,内置详细流...
据文件显示!益乐绍兴辅助(辅助... 据文件显示!益乐绍兴辅助(辅助挂)果然是有挂(有挂手段)-哔哩哔哩;无需打开直接搜索打开薇:1367...