有没有办法“完全”禁用“编辑并继续”?

2024-04-12

我想知道是否有一种方法可以在 Visual Studio 2008 中调试代码时完全锁定我的代码。当作为 64 位应用程序运行时,代码文档会自动锁定,这是我非常喜欢的;然而,我的大部分编码都是为 Excel 制作加载项,它是 32 位的。结果是,即使我的目标是“AnyCPU”,VS 主机也知道它正在 32 位进程中运行,因此源代码是not当代码在 Visual Studio 中托管运行时被锁定。

我可以通过转到“工具”>“选项”>“调试”>“编辑并继续”,然后取消选中“启用编辑并继续”复选框来关闭“编辑并继续”。然而,这并没有完全锁定代码。这确实可以防止在代码中执行任何编辑current运行,但它不会阻止鼠标单击或击键实际更改代码。

同样,当使用 64 位应用程序时,这种情况不会发生——代码被完全锁定。我非常喜欢将代码完全锁定,至少有几个原因:

  1. 我在调试时可能会不小心按下某个键等,这是我绝对不想做的。这种情况很少见,但这是一个问题。

  2. 我的许多自动化测试通过 SendKeys 驱动用户界面。然而,当使用调试器单步执行此类测试时,我有时会忘记某些方面涉及 SendKeys,这意味着击键最终会发送到 Visual Studio IDE 而不是 Excel。

在上面的问题 #2 中,单元测试失败了,这很好——我的坏处——但是将所有击键发送到代码模块并破坏我的代码是完全不可接受的。

这里有人有什么想法吗?在 Visual Studio 中运行并针对 32 位 CPU 进行编译时,可以完全锁定代码吗?

关于这个问题的一些相关帖子,但没有一个直接解决这个问题:

  • 如何:启用和禁用编辑并继续 http://msdn.microsoft.com/en-us/library/7yty6a48.aspx
  • 在 Visual Studio 2008 中调试时“不允许更改 64 位应用程序” https://stackoverflow.com/questions/1498464/changes-to-64-bit-applications-are-not-allowed-when-debugging-in-visual-studio
  • 如何在 Visual Studio 的调试模式下启用文件编辑? https://stackoverflow.com/questions/1105292/how-do-i-enable-file-editing-in-visual-studios-debug-mode
  • Visual Studio 中的“编辑并继续”如何工作? https://stackoverflow.com/questions/224500/how-does-edit-and-continue-work-in-visual-studio
  • 我们可以在运行应用程序时编辑代码吗 https://stackoverflow.com/questions/1659835/can-we-edit-our-code-while-running-the-application
  • 调试时编辑 C# https://stackoverflow.com/questions/447706/editing-c-while-debugging

预先感谢您的任何帮助或想法...

Mike


这是我在 Visual Studio 2005 下使用的一个技巧(没有机会在 Visual Studio 2008 下测试,但它应该可以工作):

  • 打开可执行程序集的属性
  • 前往Debug tab
  • 检查启用非托管代码调试复选框

即使遇到断点,代码文档也应保持锁定状态,并且任何更改代码文档的尝试都应触发弹出窗口:“启用非托管调试时不允许进行更改”.

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

有没有办法“完全”禁用“编辑并继续”? 的相关文章

随机推荐

  • 游戏开发者的 Flash 性能:本机渲染 VS BitmapData 帧缓冲区

    我开发了一款 2D 射击游戏很多物体 and 激进的滚动 问题 哪种方式更好 选择 1 使用原生 Flash 渲染 从 Bitmap 派生游戏对象 使用现有的 x y 宽度 高度 bitmapData 将所有对象添加为子 UI Compon
  • Win7 上的 ASP.Net 中的 EventLog 权限失败

    我有一个 ASP Net 应用程序 net 3 5 SP1 在 Win7 中运行 在登录过程中 ASP Net 登录控件中的某些内容导致写入事件日志中的安全日志 这听起来对我来说可以接受 问题是该应用程序似乎没有执行此操作的权限 有错误的是
  • LINQ 结果在 for 循环结束时发生变化

    当对数据源执行一组 LINQ 查询时 我使用的是 LINQ to SQL 但这里也只使用List
  • 如何将 docx 转换为 json 以用于 firebase

    我在 Docx 中存储了引号 但我想将其转换为 JSON 因此我不必在 firebase 中手动添加每个单独的引号 这里是 file 这是我的数据库的样子以及我想如何在 firebase 中存储报价的 SS 现在 如何将 docx 文件转换
  • 未捕获的错误:没有模块:用户 Angularjs

    这是这个的后续问题如何使用rails服务器在Angular中获取索引数据 https stackoverflow com questions 18312689 how to fetch index data in angular using
  • Python,在我的 python 代码中出现了意外的关键字参数 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我的 python 代码一直给我这个错误 这是我尝试调用的函数 其下面是调用它的代码 from sys import stdout
  • 等待异步函数在地图内完成

    考虑以下简单的代码 await Promise all arrayOfObjects map async obj gt return await someAsyncFunctionOnObj obj 我的问题是 对象数组 and 对象上的一
  • cocos2d中的水效果

    我想在我的应用程序的背景层上有水效果 该效果不需要对触摸或任何东西做出反应 它只需要稍微晃动图像即可 CCWaves3D 看起来不错 但当我运行它时 边缘周围留下了令人讨厌的黑色伪影 类似CCShaky3D CCLiquid 将我的应用程序
  • 当超过两行时如何纠正 ConstraintLayout TextView 重叠

    我遇到约束布局问题 其中一个文本视图中到达第二行的文本不会向下推被限制在其下方的另一个文本视图 直到该行的中间 我用三个文本视图构建了一个简单的布局 第一个文本视图位于左侧并具有设定的宽度 第二个位于它的右侧 位于它与其父级之间 第三个位于
  • OS X Mavericks 安装 rvm 警告

    在终端中运行时 curl L https get rvm io bash s 它似乎工作正常 但在最后的升级说明中它说 WARNING You have profile file you might want to load it to d
  • 获取 HealthKit 中每个日期的总步数

    获取每天记录的总步数的最佳方法是什么HealthKit 通过 HKSampleQuery 的方法 initWithSampleType 见下文 我可以使用以下命令设置查询的开始和结束日期NSPredicate 但该方法每天返回一个包含许多
  • sqlite 退后一步

    我发现向前滚动结果集的常用方法是使用 sqlite3 step while sqlite3 step statement SQLITE ROW do something with the row 有没有办法向后滚动结果集 例如后退一步或使用
  • 代码签名:我应该签署哪些文件类型以及为什么?

    我有一个全新的代码签名证书 并且一直想知道我应该签署哪些文件 显然 应该对 setup msi 包和所有运行提升的 exe 进行签名 以避免出现 未知发布者 警告 但我应该对其他可执行文件进行签名吗 不需要提升的 exe dll 或 oxc
  • 如何排除 Android Eclipse 项目的“/res”文件夹中的文件

    有什么方法可以排除 res 文件夹下的某些文件不被 Android 构建器处理吗 我有几个使用 Eclipse 构建的 Android 项目 我将这些项目上传到我们的版本控制系统中 问题是 版本控制向每个文件夹添加了一些 project p
  • CSS 自动宽度布局,无边距:auto

    这可以用 css 实现吗 我可以用 javascript 来管理它 它基本上是一个margin auto效果 但我想要每个边距有不同的背景 所以我正在寻找 固定宽度 中心 div 两侧具有自动宽度的 div 如果有意义的话 问题更直观 ht
  • Typescript 限制最大数组长度

    基本上我想要一个最大长度为 4 的数组类型 我很容易无法找到如何在打字稿中实现此检查 有人可以帮我吗 像这样的事情 const a item1 item2 item3 item4 item5 gt array has a maximum l
  • 如何从 python 将无穷大传递给 redis?

    我正在使用 redis py 并希望将 inf 和 inf 与 ZRANGEBYSCORE 一起使用 我尝试使用 inf 的字符串和浮点来执行此操作 但它们返回一个空集 我怎样才能做到这一点 EDIT 我尝试执行以下命令 redis Str
  • iPhone iOS 如何使 UIRotationGestureRecognizer 和 UIPinchGestureRecognizer 一起工作来缩放和旋转带有子视图的 UIView?

    我正在我的应用程序中实现拖 放 调整大小 旋转标签 到目前为止 除了UIRotationGestureRecognizer手势 更具体地说 它不适用于UIPinchGestureRecognizer手势 通常 这两个手势会竞争两个手指触摸
  • C# 项目,编译器抱怨缺少对 log4net 的引用

    我正在使用 Visual Studio 2017 构建一个大型 C 项目 解决方案中有 200 多个项目 在编译其中一个项目时 我遇到了很多错误 如下所示 error CS0012 The type BufferingAppenderSke
  • 有没有办法“完全”禁用“编辑并继续”?

    我想知道是否有一种方法可以在 Visual Studio 2008 中调试代码时完全锁定我的代码 当作为 64 位应用程序运行时 代码文档会自动锁定 这是我非常喜欢的 然而 我的大部分编码都是为 Excel 制作加载项 它是 32 位的 结