为什么我的Excel加载项只有一半工作?

时间:2010-03-09 10:58:02

标签: .net excel vsto

我使用Visual Studio 2008创建了一个Excel加载项。它有一个功能区,一堆窗格和代码,可以添加工作表和范围,并从网页中获取信息。

当我在我的开发PC上运行时,它可以完美运行。我使用Publish命令将其公开并安装在Windows XP虚拟PC上。安装似乎很好,当我打开Excel时,我看到了我的功能区。如果单击显示窗格的按钮,则会弹出窗格。如果我在应该创建范围的窗格中输入一些细节并使用来自网页的数据填充它,则会创建范围,但不会访问该网页(我已经测试过我有连接)。我的一个按钮添加了一个隐藏的工作表,另一个显示或隐藏了该工作表。其中一个按钮不起作用。

我已经尝试了我能想到的一切。我想知道我是否需要处理任何权限或信任问题?

2 个答案:

答案 0 :(得分:1)

一种可能的解释是发生异常并且在没有警告的情况下暂停执行。在VSTO中,据我所知,没有简单的方法来集中错误处理并至少执行错误记录。如果抛出异常的代码没有被try / catch包围,则异常将中断执行。

因此,如果您还没有这样做,我建议您使用try / catch包围所有执行入口点,例如由用户操作(按钮点击等)触发的事件处理程序,并记录异常。

如果您有很多这些案例,可以查看以下文章(无耻插件),以便简化此过程。

Centralizing VSTO Add-in Exception Management with PostSharp

答案 1 :(得分:0)

抱歉,我不认为我有权向Joao Angelo的帖子添加回复。

另一种可以找到excel中引发的错误消息的方法是添加一个环境变量,该变量不会抑制加载项引发的任何错误消息。我遇到了这个错误,无法弄清楚导致我的加载项失败的原因。

  
      
  1. 选择开始 - >右键单击我的电脑,然后选择属性。
  2.   
  3. 选择高级系统设置 - >应出现“系统属性”对话框
  4.   
  5. 选择环境变量并添加新系统变量   变量名称为: VSTO_SUPPRESSDISPLAYALERTS   值为: 0
  6.   

现在任何错误都会被抛出到excel异常对话框中,说明完整的错误消息。