【问题标题】:Getting exception system.AppDomainUnloadedexception: the application domain in which thread was running has been unloaded获取异常system.AppDomainUnloadedexception:线程运行所在的应用程序域已被卸载
【发布时间】:2012-06-09 02:48:13
【问题描述】:

我正在使用 c# vsto (excel) 并且我已经创建了 excel 2007 项目安装程序。项目在 Office 2007 中运行良好,但在 Office 2010 中打开时,它开始产生问题。

System.AppDomainUnloadedexception: the application domain in which thread was running has been unloaded 

有人知道吗?

更新: 我刚刚再次检查了我的代码:

private void ThisWorkbook_Startup(object sender, System.EventArgs e)
{
.
.
.
 this.Close(Type.Missing, Type.Missing, Type.Missing);
.
.

}

this.close 例外

【问题讨论】:

  • 为什么要在启动时关闭工作簿?

标签: c# excel vsto


【解决方案1】:

简单的答案是您使用“this.Close”而没有告诉编译器“this”是什么。在这种情况下,您正在执行一个方法 (void),但调用了编译器无法识别的内容。这是域错误的原因?因为您试图关闭整个应用程序,而不仅仅是您想要的工作簿。

解决方案是完全声明您要关闭的工作簿对象,然后在完全声明的对象上调用 close 方法。

【讨论】:

    【解决方案2】:

    关闭工作簿会关闭应用程序域。 请参阅http://blogs.msdn.com/b/mshneer/archive/2005/07/22/442866.aspx 了解说明。

    【讨论】:

      猜你喜欢
      • 2015-06-29
      • 2017-09-26
      • 2012-02-17
      • 2011-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多