我有一个简单的单例模式类,我的应用程序通过它与 Outlook 集成,并且运行我的应用程序的几台计算机没有安装 Outlook。我已将所有互操作内容包装在 try-catch 中,以避免在 Outlook 不可用时引发异常,但我仍然会收到带有FileNotFound
异常的自动错误报告。
这是我班上的(相关代码):
Imports Microsoft.Office.Interop
Public Class OutlookIntegration
Private Shared _instance As OutlookIntegration
Public Shared Sub Initialize()
_instance = New OutlookIntegration()
End Sub
Private _outlookApp As Outlook.Application
Private _outlookNs As Outlook.NameSpace
Private ReadOnly _outlookEnabled As Boolean
Private Sub New()
Try
_outlookApp = New Outlook.Application
_outlookNs = _outlookApp.GetNamespace("mapi")
_outlookNs.Logon()
Catch ex As Exception
_outlookApp = Nothing
_outlookEnabled = False
Exit Sub
End Try
_outlookEnabled = True
End Sub
End Class
我得到的错误是:
消息:无法加载文件或程序集 'office,Version=11.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c' 或其依赖项之一。该系统找不到指定的文件。System.IO.FileNotFoundException
at OutlookIntegration..ctor()
at OutlookIntegration.Initialize() in OutlookIntegration.vb: 第 7 行
MyApplication_Startup(Object sender, StartupEventArgs e) 在 ApplicationEvents.vb:line 139(System.IO.FileNotFoundException) 无法加载文件或程序集 'office, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' 或其依赖项之一。该系统找不到指定的文件。
好像我在这里遗漏了一些简单的东西。堆栈跟踪是红鲱鱼吗?