调试 VSTO 项目时出现自动化错误/灾难性故障
Automation Error / Catastrophic Failure when debugging VSTO project
我正在为 Excel 2016 工作簿构建 document-level VSTO 自定义,但在开发过程中反复遇到此错误。基本上,Visual Studio 2015 构建项目,Excel 加载工作簿,然后 立即 Excel 显示 "Automation Error / Catastrophic Failure" 消息。它让我进入 VBA 编辑器,但屏幕上没有可编辑的代码。
我在几个地方读到这个错误意味着 VBE 中的 "References" 设置有问题,但它不会让我打开那个屏幕,该选项是灰色的。我尝试做的任何其他事情只会再次出现该错误。唯一的出路是通过 Visual Studio 停止进程。如果我直接从项目文件夹中打开源工作簿,也会出现同样的问题,我必须通过任务管理器退出Excel。
这个问题在过去的 24 小时里一直来来去去;昨晚和今天早上由于某种原因没有发生,所以我运行宁和测试我的项目没有问题,但现在问题又回来了。如果有人知道可能导致此问题的原因(请记住,这一定是过去一天不常发生的事情),我会洗耳恭听。即使只是知道要寻找什么也会有所帮助,因为我什至不知道这个错误意味着什么或要寻找什么样的东西。这是我的第一个 VSTO 项目,当这个错误不是每次都出现时,我对我能够完成的事情感到非常兴奋,所以我想永久消除这个问题。
编辑:我应该指出,我在问题标题中包含 VSTO 的原因是,在我开始 VSTO 项目之前,这本工作簿完全没问题。但是我昨天第一次尝试 运行 VSTO 项目时看到了这个错误。
所以,我想我 "kinda-sorta" 解决了我自己的问题。我仍然不是 100% 确定最初是什么原因造成的,但我会把它留在这里,供有朝一日遇到同样问题的其他人使用:
当您收到此错误时,不要像我一样绝望,因为 VBE window 没有突出显示为问题区域的代码。查看每个 object/module/sheet 中的所有 VBA 代码;就我而言,我最终发现一个突出显示的函数是问题的原因。我能够通过关闭自动计算暂时绕过错误,并且我注释掉了有问题的函数。这样做破坏了我的工作簿中的一些东西,但它让我有机会在 Visual Studio 中调试我的 VB.net 代码,并且当我在 "problem" VBA 函数之后取消注释时这样做,一切都很好。
我正在为 Excel 2016 工作簿构建 document-level VSTO 自定义,但在开发过程中反复遇到此错误。基本上,Visual Studio 2015 构建项目,Excel 加载工作簿,然后 立即 Excel 显示 "Automation Error / Catastrophic Failure" 消息。它让我进入 VBA 编辑器,但屏幕上没有可编辑的代码。
我在几个地方读到这个错误意味着 VBE 中的 "References" 设置有问题,但它不会让我打开那个屏幕,该选项是灰色的。我尝试做的任何其他事情只会再次出现该错误。唯一的出路是通过 Visual Studio 停止进程。如果我直接从项目文件夹中打开源工作簿,也会出现同样的问题,我必须通过任务管理器退出Excel。
这个问题在过去的 24 小时里一直来来去去;昨晚和今天早上由于某种原因没有发生,所以我运行宁和测试我的项目没有问题,但现在问题又回来了。如果有人知道可能导致此问题的原因(请记住,这一定是过去一天不常发生的事情),我会洗耳恭听。即使只是知道要寻找什么也会有所帮助,因为我什至不知道这个错误意味着什么或要寻找什么样的东西。这是我的第一个 VSTO 项目,当这个错误不是每次都出现时,我对我能够完成的事情感到非常兴奋,所以我想永久消除这个问题。
编辑:我应该指出,我在问题标题中包含 VSTO 的原因是,在我开始 VSTO 项目之前,这本工作簿完全没问题。但是我昨天第一次尝试 运行 VSTO 项目时看到了这个错误。
所以,我想我 "kinda-sorta" 解决了我自己的问题。我仍然不是 100% 确定最初是什么原因造成的,但我会把它留在这里,供有朝一日遇到同样问题的其他人使用:
当您收到此错误时,不要像我一样绝望,因为 VBE window 没有突出显示为问题区域的代码。查看每个 object/module/sheet 中的所有 VBA 代码;就我而言,我最终发现一个突出显示的函数是问题的原因。我能够通过关闭自动计算暂时绕过错误,并且我注释掉了有问题的函数。这样做破坏了我的工作簿中的一些东西,但它让我有机会在 Visual Studio 中调试我的 VB.net 代码,并且当我在 "problem" VBA 函数之后取消注释时这样做,一切都很好。