事实上,我有一个运行的C#应用程序
当它启动时,它运行一个excel实例并将其保存到变量:
excelApp = new Excel.Application();
然后我循环遍历每个excel的插件,找到我自己创建的添加:
private void getAddin()
{
const string addinName = "myAddInName";
foreach (Office.COMAddIn addin in excelApp.COMAddIns)
if (addin.Description.ToUpper().Contains(addinName.ToUpper()))
{
myAddin = addin;
return;
}
}
问题在于,我的插件可能出现在已停用的元素列表中。 (由于一些崩溃)
然后我必须去(在excel的框架上):
File >Options >AddIns >Manage >Deactivated elements >Achieve >"myAddin" >Activate
让我的插件再次工作(在excel重新启动后)......
我尝试使用addin的属性来重新激活它,但在这种情况下可能会再次崩溃。
myAddin.Connect = loadAddin;
有人知道如何解决它/使用C#自动重新激活禁用的插件?
答案 0 :(得分:3)
这应该有所帮助 http://msdn.microsoft.com/en-us/library/aa662931(v=office.11).aspx
我相信你需要做
if(!myAddin.Connect)
{
myAddin.Connect =true;
}