Outlook 2010
勾吴江南
志异征诛,三让两家王朝;
功同开辟,一桮万古江南。
展开
-
Outlook 2010 用代码在Outlook explorer中选中一个邮件
这个代码只能在Outlook 2010中使用using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using Outlook = Microsoft.Office.Interop.Outlook原创 2011-11-22 16:36:02 · 836 阅读 · 0 评论 -
如何在一个Office Automation的程序中获取Shared Calendars
Imports Outlook = Microsoft.Office.Interop.OutlookPublic Class Form1 Private OLApp As Outlook.Application Private OlExplorer As Outlook.Explorer Private OlNavigationPan As Outlook.Naviga原创 2012-02-24 09:32:21 · 836 阅读 · 0 评论 -
VBA调用Outlook2010 Ribbon上按钮的命令
Sub ExecuteRibbonButton() Dim Item As Outlook.MailItem Set Item = Application.ActiveExplorer().Selection(1) Item.GetInspector.Display Item.GetInspector.CommandBars.ExecuteMso ("Mo原创 2012-03-02 15:37:56 · 2496 阅读 · 0 评论 -
一个Windows Form获取Inbox下目录及邮件并另存邮件为msg文件的例程
这是根据一个客户要求写的简单例程用来替代Outlook view control的(Outlook view control的龟速实在令人不爽)由于没多大价值但是随便扔了又显得可惜,所以贴在这里希望能抛砖引玉给大家一个交流的机会。using System;using System.Collections.Generic;using System.ComponentModel;using原创 2012-03-06 11:59:39 · 1466 阅读 · 0 评论 -
使用Items.restrct搜索关键字
搜索body和Subject:Outlook.Items items = Inbox.Items.Restrict("@SQL=\"urn:schemas:httpmail:textdescription\" like '%" + [keyworkds] + "'");只搜索Subject:Outlook.Items iis = Inbox.Items.Restrict("原创 2012-03-16 12:07:06 · 1066 阅读 · 0 评论 -
VSTO编辑Outlook MailReading Inspector的Move Group
实际上在Outlook MailReading Inspector中Move Group的控件是不可被编辑的。如果要编辑就需要自定义一个Group然后放如控件进行设定。下面是一个例子。原创 2012-05-21 13:14:12 · 1107 阅读 · 0 评论 -
MAPIFolder.UserDefinedProperties 的作用
在OOM(Outlook Object Module)中UserDefinedProperties看起来非常奇怪,你可以定义它,却不能给它赋值。其实UserDefinedProperties是用来建立一个用户自定义项来显示其文件夹下Item中相应的自定义值的。下面是个用来说明的小例子。 using System;using System.Collections.Generic;usin原创 2012-07-04 19:42:42 · 940 阅读 · 0 评论 -
代码操纵Outlook 2010日历显示第二时区
在Outlook的日历中显示第二时区是不能通过OOM(Outlook Object Model)、MAPI或CDO来完成的。这个纯粹是跟本地的注册表有关。关于第二时期的设定在注册表的HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Options\TimeZone键下。在这个键下有四个值:SecondaryTZ REG_DWORD原创 2012-06-21 15:25:10 · 2266 阅读 · 0 评论 -
Outlook 2010的一个Bug
环境:Windows 7 旗舰版 Visual Studio 2010、Office 2010重现步骤:在Visual Studio 2010中用C# 建立一个Outlook Add-in 项目(framework 3.5 或framework 4.0)在项目中添加一个Ribbon(Ribbon Visual Designer,不是Ribbon Xml)。将这个Ribbon的Ribbo原创 2012-07-05 13:13:17 · 947 阅读 · 0 评论 -
Outlook 2010 从磁盘读取一个HTML文件作为Email的Body
Sub ReadHTMLToMailBody() Dim objMailItem As Outlook.MailItem Dim objFileSystem As Object Dim objFileInfo As Object Dim objStream As Object Dim strSourceCode As String Set原创 2011-11-30 14:21:15 · 2389 阅读 · 0 评论 -
Outlook 2007 添加Quick Part
Sub InsertQuickPart(strPartName As String) Dim objOL As Outlook.Application Dim objDoc As Word.Document Dim objWord As Word.Application Dim objSel As Word.Selection Dim objETemp As原创 2012-08-07 16:08:06 · 898 阅读 · 0 评论 -
从剪贴板上读取Outlook中的邮件
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.IO;原创 2012-10-02 16:03:59 · 1017 阅读 · 0 评论 -
调用COM接口建立一个AppointmentItem并在Body中添加链接
// Outlook_AddLink.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include HRESULT AutoWrap(int autoType, VARIANT *pvResult, IDispatch *pDisp, LPOLESTR ptName,原创 2012-12-27 18:54:13 · 1074 阅读 · 0 评论 -
获取Outlook的起始文件夹-VSTO
实现环境:Visual Studio 2010 Uiltmate, Office 2010using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Linq;using Outlook = Microsoft.Office.Interop.Out原创 2013-02-28 20:34:55 · 854 阅读 · 0 评论 -
为Outlook增加SolutionsModule
在Outlook的左下角我们能看到“邮件”、“日历”、“联系人”、“任务”诸如此类的导航按钮。那么我们能不能加入自己的按钮呢?答案是可以的。如果想要在Outlook中加入自己的导航按钮需要分以下几步走。建立一个MAPIFolder建立一个SolutionsModule用AddSolution为SolutionsModule添加Solution. Out原创 2012-02-21 14:41:01 · 814 阅读 · 0 评论 -
Outlook 2007 Form Region add-in 可能会被加载两次
这是一个已知的问题。微软在Outlook 2007 SP3中已经修复了这个问题(在2010中也不存在这个问题)。原创 2012-01-05 11:42:02 · 683 阅读 · 0 评论 -
Outlook 2010遍历会话相关的所用邮件
这个例子使用C#,Visual Studio 2010开发,是基于Outlook 2010的应用。当你选中一个邮件然后在Ribbon上点击按钮后所用与这个会话相关的邮件都会被打开。主要代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;using Micro原创 2011-11-28 16:49:51 · 1475 阅读 · 0 评论 -
Outlook 2010使用VBA将一个MAPIFolder目录下的MailItem移到它的一个子目录下
Sub test() Dim objSession As Outlook.NameSpace Dim objFolder1 As Outlook.MAPIFolder Dim objFolder2 As Outlook.MAPIFolder Dim objItem As Outlook.MailItem Set objSession =原创 2011-11-29 16:57:13 · 1686 阅读 · 0 评论 -
遍历邮件分类,并显示分类颜色
using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using Outlook = Microsoft.Office.Interop.Outlook;using System.Windows.Forms;原创 2011-12-05 12:39:16 · 1084 阅读 · 0 评论 -
一个往Outlook邮件中嵌图片的例程
开发环境:Visual Studio 2010 Ultimate, Office Professional Plus 2010using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using Outloo原创 2011-09-08 09:00:27 · 2935 阅读 · 0 评论 -
在Outlook新邮件中向光标所在处插入一段新文字然后光标后移
实现环境:Visual Studio 2010, Outlook 2010, VSTO runtime 4.0C#using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using Outlook =原创 2011-12-12 11:17:41 · 3813 阅读 · 2 评论 -
给Outlook 2007的Calendar视图增加个右键菜单项
实现环境:Visual Studio 2010, Office 2007, VSTO 4.0using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Linq;using Outlook = Microsoft.Office.Interop.Ou原创 2011-12-23 12:20:48 · 1829 阅读 · 4 评论 -
接受一个iCal邀请, ExtractOrganizedMeetings值
原文:I received a meeting invitation from someone but I cannot accept the meeting invitation as I can’t use the Accept, Decline and Tentative buttons.I believe the sender used iCal on a Mac to s翻译 2011-12-26 10:47:12 · 1170 阅读 · 2 评论 -
RibbonX的Globalization和Outlook中RibbonX的应用
实现环境:Visual Studio 2010,Office 2010, VSTO 4.0在Ribbon的Globalization中第一步是要建立相应语言的资源文件,这些资源文件的命名方式是"Resources.[语言代码].resx"如图:这此资源文件必须方在项目的“Properties”文件夹下(你刚创建是是在项目的根目录下,需要你手动把它移到"Properties"文件夹下原创 2011-12-15 13:54:37 · 1246 阅读 · 0 评论 -
关于MSG文件中不保存UserProperties的解决办法
在实际运用过程中我们发现当MailItem保存为Msg文件 时UserProperties不会被保存。这样的话用户自定义的许多属性将会丢失。所以我建议用户如果要保存带用UserProperties的邮件最好先通过VBA或Add-in把UserPropeties的内容用""保存到HTMLBody中(本人推荐这样做)。或者在Inspector中通过WordEditor或得Word.Document然后原创 2011-12-16 11:19:20 · 633 阅读 · 0 评论 -
Outlook打开工享Calendar
其实……通过Outlook的Application我们是不能直接访问人家的Calendar的。所以我们要绕个圈子去访问它。using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Office.Tools.Ribbon;using Outloo原创 2011-12-23 15:24:24 · 1281 阅读 · 2 评论 -
从Outlook删除Item时必须从后往前删
我在用代码删除大量邮件的时候发现:往往删掉几十封邮件后程序就自动停下来了。经过大量的搜索和在论坛中的提问,现在终于找到解决方法了:必须从后往前删!我用一下代码成功地在不间断的情况下删除了3700多份邮件。 using System;using System.Collections.Generic;using System.Linq;using System.Text;u原创 2012-01-27 13:01:22 · 1027 阅读 · 0 评论 -
在Outlook的VBA工程中慎用OOM做为参数
在Outlook的VBA中只有两个地方可以用OOM(Outlook Object Model)做为参数。ThisOutlooksession。在rule中跑的Sub。除些之外使用OOM做为参数会引发424错误。如果你的VBA不是在允许用OOM做为参数的范围内Sub或Function请使用EntryID做为参数传递Item或MAPIFolder。原创 2012-01-03 13:44:16 · 668 阅读 · 0 评论 -
在Outlook的联系人文件夹下能否创建同名联系人?
答案是肯定的:可以创建同名甚至是同名同Email地址的联系人。我在联系人文件夹下创建的一个Test文件夹用来存放测试所创建的联系人。大家有兴趣可以试试。Sub AddNewContact() Dim objNameSapce As Outlook.NameSpace Dim objMAPIFolder1 As Outlook.MAPIFolder Dim obj原创 2012-01-04 13:57:39 · 900 阅读 · 0 评论 -
Outlook 2010中添加自定义Form并使用VB代码处理事务的示例
在Outlook中用户能在不同层次上定义一些自定义的Form来方便Outlook中的一些具有自己个性的事务的处理。本示例将重现这个开发过程。在开始重现前我们先做如下约定以保证示例能被正确理解:1. 你已经熟知Custom Form与Organizational Forms Library(企业窗体),Personal FormsLibrary(个人窗体),Outlook Fo原创 2013-03-23 19:11:28 · 2495 阅读 · 0 评论