C# 如何从EXE调用/调用VSTO生成的加载项(DLL)

C# 如何从EXE调用/调用VSTO生成的加载项(DLL),c#,com,vsto,add-in,C#,Com,Vsto,Add In,我已经创建了一个VSTO单词Addin。它生成了一个DLL文件。我不想将其部署为EXE。但是我想使用一个C#应用程序(EXE)来调用或调用这个VSTO dll。这可能吗?如果可能,我如何实施 请注意,我不想将我的加载项部署为EXE。我只希望我的VSTO加载项保持为DLL,然后从EXE调用 我尝试了以下方法,但没有成功 1) WordAddIn.ThisAddIn addin = new WordAddIn.ThisAddIn(null, null); 这里的WordAddin是VSTO dll

我已经创建了一个VSTO单词Addin。它生成了一个DLL文件。我不想将其部署为EXE。但是我想使用一个C#应用程序(EXE)来调用或调用这个VSTO dll。这可能吗?如果可能,我如何实施

请注意,我不想将我的加载项部署为EXE。我只希望我的VSTO加载项保持为DLL,然后从EXE调用

我尝试了以下方法,但没有成功

1) WordAddIn.ThisAddIn addin = new WordAddIn.ThisAddIn(null, null);
这里的WordAddin是VSTO dll

2) Using Reflection
Assembly newAssembly = Assembly.LoadFile("C:...bin\\Debug\\WordAddin.dll");

Type[] types = newAssembly.GetExportedTypes();
Type entryType = newAssembly.GetType("ThisAddin");
object o = Activator.CreateInstance(types[0], true);
在本例中,我得到“没有为此对象定义无参数构造函数”


不能再往前走了!。请建议

VSTO仅用于通过外接程序定制MS Office;对于.Net exe,没有合理的方法来使用它。要使用外接程序扩展自己的.Net exe,请参阅以下参考资料:

  • 问题就在这里

很难理解这一点,VSTO的设计目的是使为Office程序编写外接程序变得简单。以便Office程序可以使用您的代码。如果您想编写一个从自己的EXE调用的类库,那么使用VSTO毫无意义。