宏安全性和共享问题

有关宏的主要安全性问题是:

  • 知识产权保护

  • 病毒的防护

由于宏是作为源代码分发且不能被编译,所以任何人都可以查看代码。 要想保护您的知识产权,可以将代码放入一个外接程序中,对其进行编译,然后仅发布编译后的二进制文件。 这样可防止他人查看源代码。

至于宏和病毒,Visual Studio 宏是安全的,原因在于打开宏项目时没有任何宏代码自动运行。 必须显式运行宏。 此外,可以在运行宏前检查代码以确保它是安全的。 当 Visual Studio 打开宏项目时,它会查找任何可以自动运行的事件处理代码,如果找到了,它就会警告存在这种代码。 发生这种情况时,可以选择禁用代码以便安全地打开它。

各“项目”节点有各自的安全设置。 可以对每个项目指定是否禁用事件代码。 设置为:

  • “禁用事件处理代码”。

  • “启用事件处理代码”。 (默认值)

例如,它允许仅在某些宏项目上禁用事件处理代码。

宏共享问题

有两种保存宏文件的格式:二进制或文本。 由于所有宏项目都包含在一个文件中,因此将宏保存为二进制格式 (.Vsmacro) 使同时发布多个宏项目更容易。 将宏保存为文本文件使代码更具可迁移性,例如使得将宏剪切和粘贴到电子邮件消息并与他人分享变得容易。

如果二进制宏项目所引用的组件不是与 Visual Studio 一起分发的(如 .dll 文件和类型库),则在分发它时必须将那些组件与 .Vsmacros 文件包括在一起。

警告

如果别人给您发送一个宏项目,强烈建议您将它的“安全性”属性设置为“禁用事件处理代码”,对代码进行检查后再运行它。 否则,您可能会无意中调用病毒或其他破坏性代码。

请参见

任务

如何:在宏中处理环境事件

概念

使用宏自动执行重复性操作