作为尝试找出在我的机器上使用(以前)工作.NET COM项目和Excel 2013的各种问题的一部分,我在Visual Studio 2013中创建了一个简单的测试C#RTDServer类。创建测试RTD服务器项目帮助我意识到我的Excel 2013是一个64位版本,我需要将Target Platform设置为x64,以便任何.NET COM组件都可以使用这个版本的Excel。
此测试RTD组件工作正常(只要编译为x64),但我无法使用Visual Studio调试代码。以前在旧项目上工作的是将启动应用程序设置为Excel.exe,然后我总是可以在ServerStart(IRTDUpdateEvent CallbackObject)
方法中找到一个断点。
然而,当我尝试使用VS 2013项目时,它永远不会达到断点。如果我在运行时设置了新的断点,我会看到消息:
断点当前不会被击中。没有加载任何符号 对于这份文件。
我已经搜索了很多解决方案,但没有找到任何有效的方法。
答案 0 :(得分:0)
事实证明这个问题是由Excel的应用程序配置引起的,我们在使用Excel 2003运行时必须使用它(当我们第一次开发此应用程序时)。
配置包含以下内容:
<startup>
<supportedRuntime version="v2.0.50727"/>
<supportedRuntime version="v1.1.4322"/>
<requiredRuntime version="v2.0.50727"/>
</startup>
但是,此RTD服务器使用的是.NET 4.5。一旦我从Office目录中删除了配置文件,它就开始在调试器中工作。