我有一个outlook addin,位于网络驱动器上供所有用户使用。
当网络出现故障时可能是由于电缆拔出或系统问题,如果此时用户启动Outlook(当没有网络可用时),Outlook会自动勾选无法使用的插件。< / p>
只要用户没有启用它,加载项就不会加载。永远。你可以关闭outlook,重新打开它,如果在outlook开始时找不到.VSTO文件,它就不会加载插件。
将注册表值设置为永不禁用插件,这里不会有效,因为插件不会被禁用,只会被关闭并等待手动重新激活。
我希望它能够停止关闭,或者至少在网络可访问时自动启用它。这可以在没有第三方exe在后台运行的情况下完成吗?
答案 0 :(得分:0)
从网络驱动器运行不是一个好主意。为什么不在安装插件时在本地复制dll?
答案 1 :(得分:0)
将插件本地放入每台计算机,并为这些计算机配备简单脚本which runs on user logon,并将插件从其网络位置复制到本地目录。这将使您的插件更新并始终可用。
如果网络不可访问,则脚本(用户不可见)将失败,而不是Outlook。这有所不同:)
当然,除了初始启动脚本之外,还有可能在用户登录时定期(每天一次?)重新运行它。这仅在Outlook未运行时才有效,否则无法覆盖插件DLL。
答案 2 :(得分:0)
为什么不在本地安装然后编写代码来检查网络位置?如果网络可用,请将远程dll与本地dll进行比较。如果它们不同,请将新dll复制到本地计算机,然后调整该插件的注册表项。然后向用户显示一条消息以重新启动应用程序。