visual-studio-extensions - Microsoft.VisualStudio.SDK + Microsoft.VisualStudio.Debugger.Interop.Internal = 错误
问题描述
由于访问 VS 调试器的“标准”Api 似乎极为有限,因此我在使用 VS-SDK nuget 时手动添加了对Microsoft.VisualStudio.Debugger.Interop.Internal.dll的引用。当我使用此代码时,它会编译并运行:
IDebuggerInternal debugger = Package.GetGlobalService(typeof(SVsShellDebugger)) as IDebuggerInternal;
var session = debugger?.CurrentSession;
但是当我将其更改为使用显式类型IDebugSession3
IDebuggerInternal debugger = Package.GetGlobalService(typeof(SVsShellDebugger)) as IDebuggerInternal;
Microsoft.VisualStudio.Debugger.Interop.IDebugSession3 session = debugger?.CurrentSession;
我收到一个错误:
错误 CS0433:“Microsoft.VisualStudio.Debugger.Interop, Version=8.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”和“Microsoft.VisualStudio.Debugger.InteropA, Version=9.0.0.0”中都存在“IDebugSession3”类型,文化=中立,PublicKeyToken=b03f5f7f11d50a3a'
遗憾的是,不能在所有情况下都使用var来规避编译器错误,例如当需要枚举时。所以,我的问题是:(如何)内部调试器-Api 可以与 VS-SDK nuget 一起使用吗?
顺便说一句:不久前,我在Microsoft.VisualStudio.Publish.dll和Microsoft.VisualStudio.Publish.Framework.PublishManager类型方面遇到了类似的问题,我没有进一步调查。
解决方案
推荐阅读
- ios - Xcode 应用程序中的 UITabBarItem 存在致命错误,因为在隐式展开可选值时发现 nil。不知道出了什么问题/如何解决
- discord.py - 如何让我的机器人加入语音频道
- c# - 如何在 Unity 3D 中将对象移动到鼠标的 z 和 y 坐标
- postgresql - Postgres Hstore 联系人不能从其他模式工作
- python - 在 Python 中渲染 3 维康威生命游戏的有效方法是什么?
- java - 未创建线程“主”会话中的异常:此版本的 ChromeDriver 仅支持 Chrome 版本 81
- node.js - 使用 Express 和 Sequelize 与 SQL Server 登录失败
- terminal - 为什么 rust 进程会在 Ctrl+C 上导致终端错误?
- c - 使用'void'的彩票生成功能
- java - 使用正则表达式获取整数值