- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我来自this page 并正在考虑将我的 VbaProject.OTM
文件(位于 %appdata%\Microsoft\Outlook\
)分发给大约 30 个人的最佳方法我办公室的用户。是否最好简单地将 OTM 文件复制/粘贴到网络上,然后将其复制/粘贴回所有用户的计算机(手动或使用 .bat)或者使用该方法会更好吗上面的链接中描述了如何生成 OPS 文件并使用 Proflwiz.exe 将其导入回来?有什么区别?
实际上,我们都在使用 Microsoft Office Outlook 2003,我们可能有一天会升级到 2007,但还需要几年时间。
最佳答案
最终提出了一些部署 Outlook VBA 项目的元素。有很多方法可以做到这一点,但最简单的方法是直接从服务器运行 OTM 文件,而无需安装任何东西并保持相同的方法。我发现进程outlook.exe有一个参数altvba,允许指定另一个路径来运行OTM文件。这是一个例子:
outlook.exe/altvba“\\myServer\myFolder\myFile.otm”
这允许我只更新一个文件来更新所有计算机。显然,如果文件很大并且服务器的 ping 值偏高,则可能会延迟 Outlook 的启动。此方法的另一个问题是,如果您想更新服务器上的 OTM 文件,每个人都必须关闭 Office(如果您在每个人都使用 Outlook 的办公室工作,您确实知道这是不可能的) 让每个人同时关闭它,除非你最终编写了一个宏来这样做)。为了防止这两个问题,我可以设置一个批处理文件,以便每次有新版本时都在客户端复制服务器 OTM 文件(只需检查 NTFS 最后修改属性)。这样,Outlook 将使用本地文件启动,如果需要,批处理文件需要 2-3 秒来复制文件(或将立即启动 Outlook),并且更新服务器上的 OTM 文件不会出现问题。用户必须使用批处理文件启动 Outlook(或使用带有 altvba 参数的稍微不同的 Outlook.exe 路径,因此无论哪种方式,他们都需要不同的快捷方式/文件才能第一次启动)。 altvba
的另一个优点是,用户在没有它的情况下仍然可以轻松运行 Outlook(在 Outlook 运行缓慢的情况下查看 VBA 是否有问题),并且文件在运行一段时间后将保持不变。 Outlook 重新初始化。
其他解决方案包括 COM 补充,可以在包括 VB6 在内的多种语言上进行开发(无需从 VBA 进行转换)。 Microsoft Office XP Developer 中还包含一堆可以帮助完成工作的工具(但是不是免费的,特别是当您需要最新版本时)。
关于VbaProject.OTM部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14460036/
我在 VbaProject.OTM 中有一些宏。每隔一段时间,我更新代码,但时间戳不会改变。我没有检查文件大小是否改变。 This , this和 this报告类似的观察结果。 这种行为是预期的吗?
我是一名优秀的程序员,十分优秀!