我们具有将联系人添加到 Outlook 的功能。
如果一个正在运行,我只是想对现有的 Outlook 进程执行此操作,如果没有运行,我只想打开它。
我得到错误:
由于以下错误,检索具有 CLSID {0006F03A-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败:80080005 服务器执行失败(来自 HRESULT 的异常:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。如果进程尚未运行.
注意:下面的方法被调用了 2 次。
我的代码是:
Private Sub InitObject()
If (Process.GetProcessesByName("OUTLOOK").Count > 0) Then
objOutlook = DirectCast(Marshal.GetActiveObject("Outlook.Application"), Outlook.Application)
'If objOutlook Is Nothing Then
Else
objOutlook = New Outlook.Application()
End If
If objNamespace Is Nothing Then
objNamespace = objOutlook.GetNamespace("MAPI")
objNamespace.Logon("", "", False, False)
End If
If objFolder Is Nothing Then
objFolder = objNamespace.GetDefaultFolder(10)
End If
End Sub
我读了几篇关于管理员权限的帖子。现在我正在运行没有管理员权限的 Visual Studio。我很神圣,在我们不使用 Visual Studio 的生产环境中也会出现这个错误吗?