宏不在Visual Studio 2010中运行

Ger*_*ard 12 macros visual-studio-2010

Visual Studio 2010中的宏无法再启动.它们没有在宏IDE的第一行中遇到断点.没有错误消息.仍然可以记录宏,代码显示在宏IDE中,但新录制的宏也无法启动.宏文件中没有错误,至少错误列表中没有显示错误.如果我故意添加错误,错误将显示在错误列表中.

我启动宏时有一个短的光标更改,但没有其他任何事情发生,并且输出视图中没有输出.看起来有一个设置或选项阻止宏运行,但我找不到任何这样的设置.我在第二台计算机(在同一网络上)遇到同样的问题,所以可能有一些Windows(7)更新导致了问题.我在过去经常使用宏而没有任何问题,并且最近没有更改宏代码.

有人遇到过同样的问题吗?

Rak*_*n42 25

在2014-02-11,微软发布公告MS14-009 - 重要.漏洞CVE2014-0257是修复程序列表中的一部分.这涉及通过使用反射来执行特权的提升,以执行通常对调用者不可访问的代码.部分解决方案涉及禁用COM接口上的反射.这导致了适用于所有.NET Framework和Windows组合的一系列补丁.您可以通过上面的链接查看列表.

Microsoft发布了后续KB2934830,以解决通过Visual Studio运行宏的问题.您需要以管理员身份编辑以下一个或多个文件:

VS2005:

C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\8.0\VsaEnv\Vsmsvr.exe.config
Run Code Online (Sandbox Code Playgroud)

VS2008:

C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\Vsmsvr.exe.config
Run Code Online (Sandbox Code Playgroud)

VS2010:

C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\Vsmsvr10.exe.config
Run Code Online (Sandbox Code Playgroud)

在运行时部分下添加它.运行时应该已存在:

<AllowDComReflection enabled="true"/> 
Run Code Online (Sandbox Code Playgroud)

这应该使宏按预期执行.