标签: outlook-addin

Office 2007:以编程方式控制外出助理?

有人知道如何在Outlook 2007中以编程方式启用/禁用外出自动响应程序的实际状态吗?

已经在VS 2008中搜索了对象浏览器并找到了枚举Microsoft.Office.Interop.Outlook.OlBusyStatus但我没有找到任何类或其他任何使用它的内容.

任何想法都表示赞赏,感谢和问候

c# office-2007 visual-studio-2008 outlook-addin

6
推荐指数
1
解决办法
2533
查看次数

很好地阅读outlook mailitem属性

我正在为outlook 2007编写一个插件,我想阅读一个MailItem的属性.

特别是我想知道我的附件的所有内容类型.现在,我现在这样做的方式是这样的:

Outlook.MailItem item = OutlookItem as Outlook.MailItem;
Outlook.Attachments itt = item.Attachments;

foreach (Outlook.Attachment t in item.Attachments)
{
textBox1.Text += t.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x370E001F");
}
Run Code Online (Sandbox Code Playgroud)

但我宁愿只是打电话.

t.PropertyAccessor.GetProperty(PR_ATTACH_MIME_TAG);
Run Code Online (Sandbox Code Playgroud)

我不能让你以后的选择工作,但是在msdn文档中提到了这个属性.(http://msdn.microsoft.com/en-us/library/ms879575.aspx).有没有人知道如何在不使用字符串而是使用常量的情况下很好地检索属性?

c# mapi office-2007 outlook-addin

6
推荐指数
1
解决办法
1万
查看次数

C#dual Outlook 2007/2010 VSTO加载项

我们需要在C#中创建一个支持Outlook 2007和2010的VSTO加载项.

首先,我们创建了3个项目:

  1. 文件 - >新建项目 - > Office-> 2007-> Outlook 2007加载项
  2. 文件 - >新建项目 - > Office-> 2010-> Outlook 2010加载项
  3. 文件 - >新建项目 - > Windows->类库

所有共享代码都在项目#3中.

到目前为止,我们已经部分开发了加载项,并一直在使用ClickOnce部署进行测试.

有一天,我们注意到有人安装了2007 Outlook的2010加载项并且没有任何不良影响.

所以有几个问题:

  • 有没有理由创建2007 VSTO项目?我们可以创建2010年的项目吗?
  • 或者,ClickOnce安装程序引导的Office运行时版本的唯一区别是什么?你能为Outlook 2007安装2010运行时吗?
  • 如果没有区别,为什么有两个Visual Studio项目模板?

在我们的最终解决方案中,我们将使用WiX安装程序,该安装程序目前也在使用.如果我们可以使用1个项目作为加载项,那么WiX安装程序将大大简化.

.net c# outlook vsto outlook-addin

6
推荐指数
1
解决办法
5652
查看次数

Outlook 2007加载项:如何将图标添加到msoControlButton

背景:我正在使用C#在VS2010中开发Outlook 2007加载项.我正在做的具体事情是将菜单项添加到与电子邮件关联的上下文菜单中.我使用以下代码执行此操作:

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
   Application.ItemContextMenuDisplay += Application_ItemContextMenuDisplay;
}

private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}

private void Application_ItemContextMenuDisplay(Office.CommandBar commandBar, Outlook.Selection selection)
{
   var cmdButtonCallContact = (Office.CommandBarButton)commandBar.Controls.Add(Office.MsoControlType.msoControlButton, 1, System.Reflection.Missing.Value, 6, System.Reflection.Missing.Value);

   cmdButtonCallContact.Caption = "&Foo";
   //cmdButtonCallContact.Picture = ?
   cmdButtonCallContact.Click += cmdButtonCopy_Click;
}

private void cmdButtonCopy_Click(Office.CommandBarButton ctrl, ref bool canceldefault)
{
   System.Windows.Forms.MessageBox.Show("Bar");
}
Run Code Online (Sandbox Code Playgroud)

问题:似乎无法设置图片.Msdn示例依赖于我没有的AxHost转换函数.是否有一种简单的方法可以将图像或BitMap设置为图片?

谢谢.

.net c# office-addins outlook-addin

6
推荐指数
1
解决办法
4261
查看次数

更改outlook MailItem图标

我正在开发一个outlook 2010插件,当用户从菜单中单击按钮时,它会将电子邮件导出到特定位置.

这部分不是问题,但MailItem如果导出成功,我还需要更改图标 - 象形图.我试图寻找解决方案,但我只是得到我需要使用表单区域,但我没有找到真正有用的解决方案.

任何想法我应该如何使用这个表单区域?!


我完成了加载项,从VS 2010调试时,一切似乎都很完美.我还创建了一个安装程序,但在安装应用程序后,Outlook将不会显示我想要的图标.它不是显示你上面看到的内容,而是更改图标,但显示默认图标 - 而不是我的图标.图标位于我使用的FormRegion的resx文件中(我使用dor默认和从清单中读取图标),我还尝试将它们移动到常规资源文件(Properties.Resource),但结果是相同的.有人可以帮我弄这个吗?


所以我还使用Replacement和ReplaceAll添加了一个FormRegion,在清单上的默认图标上添加了我的图标,并将其命名为IPM.Note.MyExportedItem.

在ThisAddin.cs中,我有以下代码:

MailItem mailItem =(selectedItem as MailItem);

                    itemGuid = mailItem.EntryID;
                    string name = mailItem.Subject + ".msg";



                    name = "C:\\" + name.Replace(":", "");
                    try
                    {
                        mailItem.SaveAs(name, OlSaveAsType.olMSG);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.ToString());
                    }
                    mailItem.MessageClass = "IPM.Note.MyExportedItem";
                    mailItem.Display(true);

                    ........
Run Code Online (Sandbox Code Playgroud)

但是,当我按照我想要的方式导出它时,这并不是将邮箱中的mailItem(电子邮件)图标更改为我的图标,我可以看到的唯一更改是当我调用Display(true)并打开邮件消息时.此外,如果我按下新项目,选择表格并打开我的表格区域,它会打开一个撰写邮件窗口,如果我发送电子邮件给我,那么它将有我的图标...奇怪...你可以在图片中看到:-)你知道我做错了什么吗?

这是它的外观

问候

c# outlook outlook-addin outlook-form outlook-2010

6
推荐指数
1
解决办法
3950
查看次数

获取Outlook 2010规则说明

我正在为Outlook 2010开发加载项.我必须为它们获取所有规则和描述.我可以访问规则,但我不明白如何获得图片上的描述.在此输入图像描述

c# outlook outlook-addin outlook-2010

6
推荐指数
1
解决办法
396
查看次数

C#Outlook加载项阵列从1开始?

我一直在撞墙上25分钟,试图找出为什么我无法访问数组的'第一个'索引,我试图用数组[0].我不断得到一个超出界限的数组索引.只是为了看看会发生什么,我尝试使用数组[1] ......并且它有效.完美.我不知道为什么.

for (int i = 1; i < itemCounter+1; i++)
{
     if (explorer.CurrentFolder.Items[i] is Outlook.MailItem)
     { //Do something }
}
Run Code Online (Sandbox Code Playgroud)

整件事情很好.这里发生了什么?

c# outlook outlook-addin

6
推荐指数
1
解决办法
1047
查看次数

自动将电子邮件签名插入Outlook会议邀请

我一直在网上寻找一种方法来做到这一点,但没有这样的运气.我的目标是将会议议程模板保存到电子邮件签名中,该签名将插入到我创建的每个会议邀请中.

寻找一些如何做到这一点的线索?

outlook vba outlook-vba outlook-addin

6
推荐指数
1
解决办法
1万
查看次数

Outlook 2016插件AttachmentSelection问题

我为选定的附件创建了一个Outlook插件,以获取附件的详细信息.它在Outlook 2010中运行良好.但是当我为Outlook 2016构建它时,它变为null.

以下是ThisAddIn.cs中的代码: -

 private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            System.Reflection.Assembly assemblyInfo = System.Reflection.Assembly.GetExecutingAssembly();
            Uri uriCodeBase = new Uri(assemblyInfo.CodeBase);
            string Location = Path.GetDirectoryName(uriCodeBase.LocalPath.ToString());
            var path = Location.Split(new string[] { "bin" }, StringSplitOptions.RemoveEmptyEntries);
            var rootDir = path[0].ToString();
            var forPermissionsRootDirectory = Path.GetDirectoryName(rootDir);
            SetPermissions(forPermissionsRootDirectory);

            app = this.Application;
            app.AttachmentContextMenuDisplay += new Outlook.ApplicationEvents_11_AttachmentContextMenuDisplayEventHandler(app_AttachmentContextMenuDisplay);//attach Attachment context Menu Event//

        }

 void app_AttachmentContextMenuDisplay(Office.CommandBar CommandBar, Outlook.AttachmentSelection selection)
        {
            selectedAttachment = selection;
            RibbonUI.InvalidateControlMso("ContextMenuAttachments");//will get XML file data//

        }
Run Code Online (Sandbox Code Playgroud)

这是AttachmentContextMenu.cs中的代码: -

public void OnOpenMyMotionCalendarButtonClick(Office.IRibbonControl control)
        {
            Outlook.AttachmentSelection selection = …
Run Code Online (Sandbox Code Playgroud)

c# outlook-addin outlook-2016

6
推荐指数
1
解决办法
462
查看次数

运行“npm start”时无法旁加载 Office 加载项

我正在尝试使用npm start. 但它给了我一个错误 Sideloading the Office Add-in... Error: Unable to start debugging. Error: Unable to sideload the Office Add-in. Error: Sideload is not supported.

我正在运行 Microsoft 为 Outlook 插件提供的直接演示项目。npm run dev-server之前也运行过,npm start因为我在 mac 中运行。 https://docs.microsoft.com/en-us/outlook/add-ins/quick-start?tabs=yeomangenerator

我已经做了一些研究来找到这个问题,但无法提出任何问题。任何帮助将不胜感激。

outlook outlook-addin node.js yeoman-generator

6
推荐指数
2
解决办法
6682
查看次数