Tag: outlook

枚举Outlook ContactItem属性

我正在尝试使用以下代码枚举Microsoft.Office.Interop.Outlook.ContactItem对象的属性(让我们称之为ci): System.Reflection.BindingFlags bf = System.Reflection.BindingFlags.Default; foreach (System.Reflection.PropertyInfo pi in ci.GetType().GetProperties(bf)) { Console.WriteLine(“Property Info {0}”, pi.Name); } 我实际上尝试了几种BindingFlag值的组合,但是没有返回任何属性。 这是ContactItem的定义方式:使用System.Runtime.InteropServices; namespace Microsoft.Office.Interop.Outlook { [Guid(“00063021-0000-0000-C000-000000000046”)] [CoClass(typeof(ContactItemClass))] public interface ContactItem : _ContactItem, ItemEvents_10_Event { } } 这就是_ContactItem的定义方式(为简单起见,我只保留了3个道具): using System; using System.Runtime.InteropServices; namespace Microsoft.Office.Interop.Outlook { [TypeLibType(4160)] [Guid(“00063021-0000-0000-C000-000000000046”)] public interface _ContactItem { [DispId(14848)] string Account { get; set; } [DispId(63511)] Actions […]

outlook 2010加载项构建自定义WebViewPane,没有加载项Express

是否有可能在outlook中创建一个可以放在应用程序中间的自定义控件? 我的意思是这样的事: 我知道可以使用带有Add-in Express的WebViewPane来完成它但是可以在不购买此产品的情况下实现它吗? 也许有人看过一些关于写这样的sommething的文章?

VSTO Addin for Outlook 2010中的自定义function区不显示

我用一个function区为Outlook 2010准备了一个最小的VSTO Addin。 我唯一的目标是显示一个没有function的function区(由设计师创建)。 从MSDN中可以看出的一点点,默认情况下应该自动显示,也许通过调整选项卡的ControlIdType / CustomId属性。 唉,调整这些属性什么都不做 – Outlook加载并不显示任何选项卡。 function区加载器中显示的简单消息框显示它永远不会被触发。 此外,我还没有看到任何有关需要手动告诉Outlook显示选项卡的信息资源(教程,演练,概述等)。 如何显示标签? 有没有比MSDN更好的资源对VSTO新手有好处?

iCalendar不会为组织者创建活动

我正在尝试使用iCalendar标准在Microsoft Outlook日历中创建一个事件。 我已经从.NET应用程序向我的Exchange邮箱发送了一封内容类型为“text / calendar”的电子邮件。 它作为会议请求到达Outlook。 一切看起来都不错,直到我点击收到的会议请求,Outlook将其显示为空日历视图,其中包含文本: “在日历中找不到会议” 。 我不明白为什么 – 我想创建一个活动,它试图找到一些现有的? 如果我向除了组织者之外的会议参与者发送完全相同的电子邮件,它会在其日历中创建一个事件,一切似乎都可以。 我发现它是由“ORGANIZER”属性引起的。 如果设置为组织者的电子邮件(我的电子邮件)并且我向自己发送会议请求,则不会创建包含“在日历中找不到会议”信息的事件。 所以问题是它为什么不为组织者创建一个活动? 组织者必须创建该事件,以便其他参与者接受或取消会议时通知他们。 这是iCalendar: BEGIN:VCALENDAR PRODID:-//Company//Product 3.0//EN VERSION:2.0 CALSCALE:GREGORIAN METHOD:REQUEST BEGIN:VEVENT DTSTART:20130225T200000Z DTEND:20130225T203000Z DTSTAMP:20130225T143039Z ORGANIZER;CN=”John Doe”:mailto:john.doe@domain.com UID:20130225T143039Z@domain.com ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;RSVP=TRUE;CN=”John Smith” ;X-NUM-GUESTS=0:mailto:john.smith@domain.com CLASS:PUBLIC CREATED:20130225T143039Z DESCRIPTION: LAST-MODIFIED:20130225T143039Z LOCATION: SEQUENCE:0 STATUS:CONFIRMED SUMMARY:Booking test TRANSP:OPAQUE END:VEVENT END:VCALENDAR

无法转换COM对象 – Microsoft Outlook和C#

我已编写此代码以查看Outlook邮箱中的未读项目,以下是代码: Microsoft.Office.Interop.Outlook.Application app; Microsoft.Office.Interop.Outlook.Items items; Microsoft.Office.Interop.Outlook.NameSpace ns; Microsoft.Office.Interop.Outlook.MAPIFolder inbox; Microsoft.Office.Interop.Outlook.Application application = new Microsoft.Office.Interop.Outlook.Application(); app = application; ns = application.Session; inbox = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox); items = inbox.Items; foreach (Microsoft.Office.Interop.Outlook.MailItem mail in items) { if (mail.UnRead == true) { MessageBox.Show(mail.Subject.ToString()); } } 但在foreach循环中我收到此错误: “无法将’System .__ ComObject’类型的COM对象强制转换为接口类型’Microsoft.Office.Interop.Outlook.MailItem’。此操作失败,因为QueryInterface调用COM组件为IID'{00063034-0000- 0000-C000-000000000046}’由于以下错误而失败:不支持此类接口(HRESULTexception:0x80004002(E_NOINTERFACE))。 你能帮我解决一下这个错误吗?

通过C#通过Outlook 2010发送电子邮件

我正在尝试从我的C#控制台应用程序内部发送电子邮件。 我添加了引用和使用语句,但似乎我没有添加我需要的一切。 这是我第一次尝试这样做,所以我觉得有些东西我已经忘记了。 我从MSDN网站获得了这段代码片段http://msdn.microsoft.com/en-us/library/vstudio/ms269113(v=vs.100).aspx 这是我在VS 2010中遇到问题的代码 using System; using System.Configuration; using System.IO; using System.Net; using System.Net.Mail; using System.Runtime.InteropServices; using Outlook = Microsoft.Office.Interop.Outlook; using Office = Microsoft.Office.Core; namespace FileOrganizer { class Program { private void CreateMailItem() { //Outlook.MailItem mailItem = (Outlook.MailItem) // this.Application.CreateItem(Outlook.OlItemType.olMailItem); Outlook.Application app = new Outlook.Application(); Outlook.MailItem mailItem = app.CreateItem(Outlook.OlItemType.olMailItem); mailItem.Subject = “This is […]

设置默认签名前景

我做了一些为用户生成签名的东西,但现在我还想将其设置为默认签名。 这将自动添加到您正在编写或回答的新电子邮件中。 我无法找到任何forms或参考我如何做到这一点。 请有人指出我正确的方向。

从Outlook获取未读邮件

有没有办法将特定文件夹中的所有邮件发送到我的应用程序?

从C#程序读取Outlook消息时如何避免Outlook安全警报

我要求从我的Outlook收件箱中读取C#程序中的主题,发件人地址和新邮件的邮件正文。 但我收到安全警报’程序正在尝试访问您存储在Outlook中的电子邮件地址。 你想允许这个吗? 通过一些谷歌搜索我发现很少有第三方COM库来避免这种情况。 但我正在寻找一个不需要任何第三方COM库的解决方案。

Outlook 2010 Com插件 – NewExplorer永远不会触发

出于某种原因,在我的应用程序中,我的FolderSwitch在使用应用程序打开的主资源管理器上工作,但NewExplorer事件永远不会触发,因此显然FolderSwitch事件不会在新的资源管理器上触发。 我无法弄清楚为什么事件不会触发。 private List ListOfExplorerWindows = new List { }; private _Outlook.Application Application; public void OnConnection(object Application, Extensibility.ext_ConnectMode ConnectMode, object AddInInst, ref Array custom) { this.Application = (_Outlook.Application)Application; } public void OnStartupComplete(ref Array custom) { _Outlook.Explorer Explorer = this.Application.ActiveExplorer(); Explorer.FolderSwitch += new _Outlook.ExplorerEvents_10_FolderSwitchEventHandler(Explorer_FolderSwitch); ListOfExplorerWindows.Add(Explorer); this.Application.Explorers.NewExplorer += new _Outlook.ExplorersEvents_NewExplorerEventHandler(Explorers_NewExplorer); } private void Explorers_NewExplorer(_Outlook.Explorer Explorer) { Explorer.FolderSwitch […]