我开发了一个访问outlook的.NET应用程序。对于我的计算机它工作正常但是当我发布它并将其运行到其他PC外观时显示弹出“外部应用程序想要访问outlook,授予访问1/2/5/10分钟”。
但我的应用程序需要访问超过10分钟。这将是什么解决方案?
我的猜测:
修改
我在这里找到同样的事情http://www.add-in-express.com/outlook-security/
但是当我复制代码时:
AddinExpress.Outlook.SecurityManager SecurityManager = new AddinExpress.Outlook.SecurityManager();
SecurityManager.DisableOOMWarnings = true;
try {
// ... any action with protected objects ...
} finally {
// In any case please remember to turn on
// Outlook Security after your code,
// since now it is very easy to switch it off! :-)
SecurityManager.DisableOOMWarnings = false;
}
此陈述显示为错误:
AddinExpress.Outlook.SecurityManager
我必须使用哪个命名空间,我使用的是.NET 2.0。
以下是我已经包含在我的.cs文件中的命名空间
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Office.Interop;
using System.Reflection;
using Microsoft.Office;
using System.Runtime.InteropServices;
using OutLook = Microsoft.Office.Interop.Outlook;
using System.Reflection;
using System.Text;
using System.Configuration;
using System.Security;
答案 0 :(得分:1)
警告“功能”称为object model guard。
如果Outlook 2007在具有最新防病毒功能的系统上运行,则不会弹出警告,因此其他计算机可能没有AV,或者正在运行安全中心API无法查询状态的AV。 / p>
如果您从VSTO Addin访问Outlook,您可以通过调用受信任的ThisApplication
对象(链接中的示例)来绕过警卫,如果您正在使用vanilla interop,则需要执行此操作别的东西(例如Redemption)。