C# 在Visual Studio 2019/C中暂停调试器之前,是否有方法运行代码?

C# 在Visual Studio 2019/C中暂停调试器之前,是否有方法运行代码?,c#,visual-studio,driver,interception,C#,Visual Studio,Driver,Interception,这是一个非常复杂的用例,但原因如下: 我正在开发一个应用程序,它使用一个键盘驱动程序,从连接的键盘截取扫描代码。() dll被包装在C#包装器中,并在我的项目中使用。问题是,每当调试器暂停时,都无法处理关键事件(因为程序现在已停止)。这使得在调试器暂停时导航非常困难。我想知道是否有人有一个聪明的方法来处理这个问题。如果我有一些代码可以在调试器在断点处暂停之前运行,我可以调用input.Unload()并阻止驱动程序拦截 我有点不知所措,也许我只需要在调试器暂停时继续使用鼠标。修改源代码并插入要执

这是一个非常复杂的用例,但原因如下:

我正在开发一个应用程序,它使用一个键盘驱动程序,从连接的键盘截取扫描代码。()

dll被包装在C#包装器中,并在我的项目中使用。问题是,每当调试器暂停时,都无法处理关键事件(因为程序现在已停止)。这使得在调试器暂停时导航非常困难。我想知道是否有人有一个聪明的方法来处理这个问题。如果我有一些代码可以在调试器在断点处暂停之前运行,我可以调用input.Unload()并阻止驱动程序拦截


我有点不知所措,也许我只需要在调试器暂停时继续使用鼠标。

修改源代码并插入要执行的语句
input.Unload()位于断点正上方的行上。然后,当您的断点被命中时,您想要执行的代码将已经运行。调试完成后,删除该语句。

修改源代码并插入要执行的语句
input.Unload()位于断点正上方的行上。然后,当您的断点被命中时,您想要执行的代码将已经运行。调试完成后,删除该语句。

调试时执行的任何代码都将运行。那么,如果您按Shift+F9打开QuickWatch并键入
input.Unload()
。。。但是,等等,你不能键入。我还没有完全理解用例,但是有一种方法可以让你在调试器上执行一些代码,同时在中间窗口上运行调试器。如果你没有找到任何好的解决方案,下面是我的一些愚蠢想法:在虚拟机上使用visual studio远程调试器运行你的程序。远程连接到虚拟机中的进程,这将使您的键盘在主机上保持空闲。实际上,仔细想想,如果您涉及硬件,那么将调试器与进程分开并不愚蠢……调试时执行的任何代码都将运行。那么,如果您按Shift+F9打开QuickWatch并键入
input.Unload()
。。。但是,等等,你不能键入。我还没有完全理解用例,但是有一种方法可以让你在调试器上执行一些代码,同时在中间窗口上运行调试器。如果你没有找到任何好的解决方案,下面是我的一些愚蠢想法:在虚拟机上使用visual studio远程调试器运行你的程序。远程连接到虚拟机中的进程,这将使您的键盘在主机上保持空闲。实际上,仔细想想,如果涉及到硬件,那么将调试器与进程分开并不愚蠢。。。