宏安全性和共享问题
有关宏的主要安全性问题是:
知识产权保护
病毒的防护
由于宏是作为源代码分发且不能被编译,所以任何人都可以查看代码。 要想保护您的知识产权,可以将代码放入一个外接程序中,对其进行编译,然后仅发布编译后的二进制文件。 这样可防止他人查看源代码。
至于宏和病毒,Visual Studio 宏是安全的,原因在于打开宏项目时没有任何宏代码自动运行。 必须显式运行宏。 此外,可以在运行宏前检查代码以确保它是安全的。 当 Visual Studio 打开宏项目时,它会查找任何可以自动运行的事件处理代码,如果找到了,它就会警告存在这种代码。 发生这种情况时,可以选择禁用代码以便安全地打开它。
各“项目”节点有各自的安全设置。 可以对每个项目指定是否禁用事件代码。 设置为:
“禁用事件处理代码”。
“启用事件处理代码”。 (默认值)
例如,它允许仅在某些宏项目上禁用事件处理代码。
宏共享问题
有两种保存宏文件的格式:二进制或文本。 由于所有宏项目都包含在一个文件中,因此将宏保存为二进制格式 (.Vsmacro) 使同时发布多个宏项目更容易。 将宏保存为文本文件使代码更具可迁移性,例如使得将宏剪切和粘贴到电子邮件消息并与他人分享变得容易。
如果二进制宏项目所引用的组件不是与 Visual Studio 一起分发的(如 .dll 文件和类型库),则在分发它时必须将那些组件与 .Vsmacros 文件包括在一起。
警告
如果别人给您发送一个宏项目,强烈建议您将它的“安全性”属性设置为“禁用事件处理代码”,对代码进行检查后再运行它。 否则,您可能会无意中调用病毒或其他破坏性代码。