我想知道,如果有办法完全锁定我的代码在调试它在Visual Studio2008年。代码文件自动锁定当运行为64位应用程序,这是我大喜欢;然而,我做我的大多数编码使得加载于Excel,这是32位。结果是,即使我的目标'AnyCPU',VS主知道,这是内运行的一个32位的程序,因此,源代码是 锁定同时运行代码托管Visual Studio.

我可以关闭编辑并继续通过要工具项调试>编辑和继续,然后取消选中的'启用的编辑和继续检查箱。这并不完全锁定代码,但是。这并防止任何编辑在代码从正在执行中的 电流 运行,但它并不防止鼠标点击或键盘从实际改变密码。

再次,工作时与64位应用程序这不会发生--代码是完全锁定。我非常喜欢的代码是完全锁定至少几个原因:

  1. 我可以不小心碰到的一个关键等,同时调试,而我一定做不想做的事情。这是罕见的,但它是一个问题。

  2. 我的许多自动化测试的驱动的用户界通过调.当逐步通过这样一个试验使用的调试器,然而,我可以有时会忘记,某些方面涉及到调,这意味着按键风越来越送到Visual Studio IDE而不是Excel。

在第2个问题上,该单元的测试失败,这是好的--我的错-但所有按键发送到码模块和摧毁我的代码是完全不能接受的。

没有任何人有任何想法,在这里?可以在一个完全锁码运行时在托管Visual Studio同时编制的反对的一个32位的CPU?

一些相关的员额在这个问题上,但其中没有直接地址:

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

Mike

有帮助吗?

解决方案

这里是最好的,我可以拿出。它的工作原理,但有一些步骤,你可能不想利用。

基本上,该技术是为了设置文件的项目只读时运行的应用程序,然后设他们回到可写一旦您的应用程序结束。

然而,在VS2k8,默认设置一个文件的只读仍然允许编辑的文件。你需要先关闭的设定"允许编辑的只读文件..."工具项环境>文件。

第二,你需要添加以下关键的注册作为一种双字和其值设置为1:

HKCU\Sofware\Microsoft\Visual Studio\9.0\Source Control\UncontrolledInMemoryEditDialogSuppressed  

仍然 不会的工作。什么您然后要做的就是设定源的控制将为该项目的视觉来源的安全。(<-这是我假设你会不喜欢.)

然后重新启动VS2k8.

在这一点上,如果你设置一个文件的只读,你会看到,Visual Studio不会让你编辑这个文件。当你尝试,它起着计算机的异常的音乐。

现在,为了使您的文件的只读时运行的应用程序,设置一个后建立的进程来做到这一点。这就是容易的。

更难的是设他们回到可写一旦程序完成后正在运行。最简单的解决方案可能是一批文件的捷径。

其他提示

这里是一个欺骗我下使用Visual Studio2005年(没有一个机会,测试下Visual Studio2008年,但它应工作):

  • 打开的可执行大会的属性,
  • 调试
  • 检查 启用管理的代码调试 选项框

代码文件应该留下锁,即使在一个断点被击中,任何试图改变它应该引发的弹出说 "变化是不允许在不受管理的调试启用".

嘿-抱歉我不能帮助你完全锁定你的代码-我有相反的愿望:要完全解开它在调试,但我可以帮你你的第二个问题。

我建议你考虑检查活动的窗口之前发送任何钥匙,如果活动的窗口不是你的目标网站,暂停执行试验,直到重点是返回那个窗口。

我知道这不是你想要的解决方案,但它可能不会伤害,以防止其他类似的问题。

好运!

亚当

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top