检查应用程序是否从 Visual Studio 调试会话中启动

2024-05-17

我正在开发一个安装系统范围键盘的应用程序 钩。我不想在运行调试时安装这个钩子 从视觉工作室内部构建(否则它会挂起工作室 以及最终的系统),我可以通过检查是否 DEBUG 符号已定义。

但是,当我调试时release应用程序的版本是 有一种方法可以检测它是否已从内部视觉启动 工作室避免同样的问题?不得不这样做是非常烦人的 重新启动工作室/电脑,只是因为我一直在工作 发布版本,并希望使用调试器修复一些错误 忘记切换回调试版本。

目前我使用类似的方法来检查这种情况:

System.Diagnostics.Process currentProcess = System.Diagnostics.Process.GetCurrentProcess();
string moduleName = currentProcess.MainModule.ModuleName;
bool launchedFromStudio = moduleName.Contains(".vshost");

我将其称为“暴力方式”,它在我的设置中有效,但我想知道是否有另一种(更好的)方法来检测这种情况。


Try: System.Diagnostics.Debugger.IsAttached http://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.isattached.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查应用程序是否从 Visual Studio 调试会话中启动 的相关文章

  • 未向 HAL 提供足够的数据,预期位置

    我在 Android Studio 中收到此错误 我只想在按下按钮时打印文本 我收到以下错误 每次按下按钮时都会出现该错误 如果我取消注释掉意图 它也可以正常工作 但是我拥有的代码越多 错误更改就越多 我实际上不确定这是真正的错误 我这么说
  • 除了在断点处停止之外,如何测量一大块代码的时间?

    我正在 Windows 上开发 C 游戏 模拟 图形应用程序 编辑开始 如果重要的话 我正在使用 Visual Studio 2013 编辑完 Setup 我正在使用 QueryPerformanceCounter 测量从一帧到下一帧的时间
  • 无法在 Windows 7 上安装 Android USB 驱动程序

    所以我想使用我的新 Nexus 5 来调试我的应用程序 我尝试通过以下方式安装 Android USB 驱动程序装置经理 http developer android com tools extras oem usb html Win7但我
  • 多线程调试技术

    我想知道是否有人知道多线程应用程序调试技术的一个很好的调查 理想情况下 我正在寻找基于案例的分析 死锁 饥饿 损坏的共享状态 Net 特定的或通用的 我不知道有哪篇文章或书籍可以满足您的需求 因此这是我从 12 年 Windows 多线程调
  • ES6 的 Visual Studio 任务运行程序错误

    我正在运行 Visual Studio 2017 并使用任务运行程序在我的gulpfile 我最近将 gulp 任务更新到 ES6 现在收到此错误 Failed to run C Users nz9rcn Code WebUI Gulpfi
  • 使用键盘快捷键浏览代码[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 I m starting to feel the need to run fastly through code with keybo
  • 是否可以将调试会话附加到 Eclipse CDT 中正在运行的程序

    我正在编写一个netscape iplanet插件 在solaris C上使用eclipse 它基本上是一个具有特定入口点的共享对象 并且我希望能够使用eclipse的调试器 gdb 来调试共享对象 我记得在 AIX 中做过类似的事情 您可
  • Visual Studio 2010“找不到或打开 PDB 文件”

    我尝试在 Visual Studio 10 中调试程序 但遇到断点问题 我将与 dll 文件对应的 pdb 文件放在同一目录中 但是在检查模块时 我发现每个 DLL 文件都被签名为Cannot find or open the PDB fi
  • WPF C# 输入框

    我正在使用 C 构建 WPF 应用程序 我想弹出一个对话框提示用户输入他 她的名字 之后 我将跟踪该名称并将一些数据保存到 txt使用该名称的文件 例如 输入的名称是姓名 约翰 所以我有数据数据 1 2 3 然后我将 数据 保存在John
  • 获取局部变量

    当从已部署的应用程序获取堆栈跟踪作为错误报告时 获取实际变量值以重建抛出异常之前的系统状态也会很有帮助 类似的事情在 Java 中可行吗 如何才能做到这一点 干杯 最大限度 我很确定您无法获取堆栈跟踪中的局部变量 因为输出是从 StackT
  • 使用 XAML 地图控件在基于 C# VS2013 WPF 的 OpenStreetMap 的地图上添加热图图层

    我正在尝试使用 XAML MAP 控件 https xamlmapcontrol codeplex com https xamlmapcontrol codeplex com 在基于 C VS2013 WPF 的 OpenStreetMap
  • 如何使用 VS2022 中的新控制台应用程序模板访问命令行参数

    我想知道如何访问命令行参数 因为这是在Program cs通过 Visual Studio 2022 中控制台应用程序的新模板创建文件 See https aka ms new console template for more infor
  • 无法使用 IIS Express 在 VS2017 中加载文件或程序集

    我们公司有一个 ASP NET 项目 为 5 6 的开发人员运行 所有 Visual Studio 2017 和 IIS Express 上的调试 没有疯狂的设置或任何让它运行的东西 1 位同事无法使其正常工作 他总是遇到以下异常 几个月前
  • 莫名其妙的 MissingFieldException

    在下面的代码片段中 它会抛出 MissingFieldException Field Not Found DepthBidLevels 异常 但仅在下面描述的某些奇怪情况下才会抛出 for int i DomSize 1 i gt 0 i
  • 如何阻止 Visual Studio 自动创建解决方案文件

    我们的项目通常存储为单个项目 而不是更大解决方案的一部分 当我打开项目时 Visual Studio 会在我的文件夹中创建一个解决方案 sln 和 sooution 选项 suo 文件 我想停止这种自动 sln 和 suo 创建 有人知道如
  • 在运行时设置强类型数据集连接字符串的最佳方法?

    我的 Windows 窗体应用程序使用使用 Visual Studio 中的设计器创建的强类型数据集 在运行时 我希望能够选择实时数据库或测试数据库 在运行时以编程方式设置数据集连接字符串的最佳方法是什么 TableAdapters 中的连
  • 如何在 Visual Studio 中调试时强制异常?

    我正在调试模式下运行我的应用程序 并且我想手动抛出异常 即不是从代码内部抛出异常 有什么办法可以做到这一点吗 当然 跑步throw new Exception My forced exception 在命令或立即窗口中不起作用 编辑 我希望
  • 多线程调试器[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 GDB 在使用多线程 pthreads 进行调试时存在严重问题 nix 上还有其他好的 C C 多线程调
  • 在调试模式下运行 NPX 命令

    我有一些npx create react app命令卡住了 终端上没有显示任何错误 所以 我需要运行npx in 调试模式 有没有办法获得debug登录npx命令来识别问题 edit 我运行的命令 npx create react app
  • 使用 Flutter Flavor 运行调试?

    我正在尝试在 Visual Studio 代码上为我的 flutter 应用程序运行调试模式 单击 运行和调试 但是当我这样做时 我面临以下问题 The Xcode project defines schemes release priva

随机推荐