首页 > 解决方案 > 使用条形码扫描仪在 Visual Studio 2017 中调试代码:我可以以某种方式将编辑器缓冲区设置为只读吗?

问题描述

我正在尝试调试一些使用 USB HID 设备(条形码扫描仪)的代码。要测试代码,我必须扫描条形码。如今,大多数条码设备都是符合 HID 级标准的 USB 设备。对于 Windows,它们显示为键盘,这对于使它们与 Windows 软件立即兼容非常有用。

问题在于,当使用 Visual Studio 的开发人员正在调试通过 Windows Raw HID 输入 API 接收 HID 类(键盘)按键数据流的代码时。

当断点被击中时,IDE 会弹出,然后条形码扫描仪 CONTINUOUS 会连续发送按键向上和按键向下以及按键事件,这会导致条形码扫描仪的输出文本意外输入到我的代码中(.c 和 .c 和 . cpp) 文件。

在某些 IDE 上,您可以在调试期间将 IDE 设置为只读,以便您必须切换回编辑模式(结束调试)才能进行编辑。这对某些用户和某些场景非常有用,但在 Visual Studio 中似乎是不可能的。

如果可以禁用编辑,则一些 IDE 功能将丢失,例如,您将丢失编辑和继续功能。但由于我不需要这些功能,并且不想让我的代码被我的条码扫描器活动损坏,所以拥有一个只读调试器会很有用。

我认为允许我右键单击并至少将某些编辑器缓冲区标记为只读的 IDE 扩展会很有用。如果我至少弄清楚如何做到这一点,我会更新并回答我自己的问题。

在其他 IDE 中,有一些方法可以让 IDE 在调试时将所有编辑器缓冲区设置为只读,这样您在使用被测应用程序时按下的键,或者在我的情况下,来自条形码扫描仪的按键弹幕不会损坏您的源代码。

目前我必须使用编辑器撤消功能来恢复,或者我必须在磁盘上将文件设置为只读,以防止这种情况,有没有办法从IDE中做到这一点?(其他IDE确实有这个功能)

或者当 IDE 在断点处弹出时,将焦点设置到我的代码以外的其他窗口的 IDE 插件?

标签: visual-studiodebuggingvisual-studio-2017

解决方案


推荐阅读