标签: outlook-addin

如何使用 Outlook 插件 2007 和 VSTO c# 在 mailItem Body 中获取选择

我想突出显示电子邮件正文中的一些文本,然后单击某些内容(工具栏按钮等)

Outlook.Application myApplication = Globals.ThisAddIn.Application;
              Outlook.Explorer myActiveExplorer = (Outlook.Explorer)myApplication.ActiveExplorer();

              Outlook.Selection selection = myActiveExplorer.Selection;

              if (selection.Count == 1 && selection[1] is Outlook.MailItem)
              {
                    Outlook.MailItem mail = (Outlook.MailItem)selection[1];

                    mail.Copy(); // currently opened mail

                    Outlook.MailItem mailItem = (Outlook.MailItem)
                 myApplication.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);

                    mailItem.Subject = mail.Subject;
                    mailItem.To = mail.To;

                    mailItem.Body = ?????         // copy only selected text/images of user 

                    mailItem.Importance = Outlook.OlImportance.olImportanceLow;
                    mailItem.Display(true);
              }
Run Code Online (Sandbox Code Playgroud)

在mailITem.Body 上,我只想粘贴选定邮件(// 当前打开的邮件)中用户的选定文本/图像。我该如何实现它,我找不到粘贴方法。所选项目是什么,它存储到 sql server 数据库

sql-server-2008 outlook-addin c#-4.0

5
推荐指数
1
解决办法
1936
查看次数

从 VSTO Outlook 加载项生成的居中 WPF 对话框

我正在开发一个 Outlook 2010 加载项,它为用户输入提供了一个对话框。在功能区中显示按钮所需的代码位于其自己的 Outlook 2010 加载项项目中。该项目引用了负责大部分工作的 WPF 用户控件库。

我在 WPF 用户控件库项目中使用了一个静态方法,该方法负责正确配置 Caliburn.Micro 并显示对话框。除了我无法弄清楚如何正确定位对话框之外,所有这些都按预期工作。我希望它以 Outlook 窗口为中心显示。我知道我可以访问Microsoft.Office.Interop.Outlook.Application.ActiveWindow(),但我看不出这对我有什么帮助,因为我无法将其翻译成PlacementTarget在 Caliburn.Micro WindowManager 的 ShowDialog 方法的设置中将其为预期。

WPF 用户控件库

namespace WpfUserControlLibrary {
    public static class Connector {
        public static void ShowDialog() {
            new AppBootstrapper();
            var windowManager = IoC.Get<IWindowManager>();
            windowManager.ShowDialog( new ShellViewModel() );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Outlook 2010 加载项

WpfUserControlLibrary.Connector.ShowDialog();
Run Code Online (Sandbox Code Playgroud)

wpf vsto outlook-addin caliburn.micro

5
推荐指数
0
解决办法
1664
查看次数

将Outlook加载项部署到Citrix XenApp安装

我创建了一个Outlook插件.它没有什么特别的,只需添加一个带有一个菜单项的菜单.我按照http://blogs.msdn.com/b/mcsuksoldev/archive/2010/10/01/building-and-deploying-an-outlook-2010-add-in-part-2-of中的安装程序创建教程进行了操作.-2.aspx.

它在普通的Windows桌面安装上安装并正常运行,但我无法弄清楚如何在Citrix XenApp环境中执行此操作.我可以使用安装程序在安装Outlook成功的相同配置文件中安装它.但是当Outlook运行时,当我从"信任中心"菜单中查看它时,它位于"非活动应用程序插件"部分,并且它无法正常激活.如果我打开Manage COM Addins菜单,它会显示"Load at Startup"作为我的插件的加载行为.如果我尝试从此菜单手动激活它,则不会发生任何事情,如果我再次打开它,Load Behavior将更改为"Not Loaded.Managed Add-in Loader初始化失败."

以前有人遇到这个或类似的东西吗?提前致谢.

vsto citrix ms-office outlook-addin xenapp

5
推荐指数
1
解决办法
3922
查看次数

带有功能区下拉菜单的加载项命令中的动态内容

有没有办法使用加载项命令在功能区下拉菜单中显示动态内容?我认为在撰写本文时,这是无法实现的。此外,如果项目本身不能是动态的,是否可以至少为显示的标签提供动态字符串。

在此处输入图片说明

编辑: 我在这里创建了一个 UserVoice 功能请求

注意:此问题仅针对新一代 Web 加载项 (office.js),而非 VSTO。

office-addins outlook-addin office-js outlook-web-addins

5
推荐指数
1
解决办法
721
查看次数

设置 Office 加载项任务窗格的宽度

是否可以设置 Outlook 加载项加载时的宽度。现在,当我单击功能区上的插件按钮时,任务窗格会显示在右侧,宽度约为 437 像素。我想将该宽度增加到 820 像素之类的值。

outlook office-addins outlook-addin office365 office-js

5
推荐指数
1
解决办法
3779
查看次数

Office Add-in(Web 应用程序)可以完全脱机(无需 Web 服务器)?

我想使用一些 HTML + JavaScript 创建一个 Office 加载项,以便在 Office 商店中出售。而且这个插件不需要使用任何服务器端设施。但是,如果我了解https://dev.office.com/getting-started/addins,则 Add-in 的源文件必须托管在某个 Web 服务器上。

所以主要问题:我可以以某种方式将加载项的所有源和所有资源打包到输出 DLL 文件中,并仅将清单和 DLL 文件推送到 Office Store,而无需任何 Web 服务器吗?

我需要它来允许来自 Office 商店的用户,将这个插件安装到他的办公室,甚至可以离线使用它(没有互联网连接)。

如果有人决定窃取我的资源并创建加载项的副本,那么这种配置对于反向加载项也有点复杂。

ms-office office-addins outlook-addin office365 office-app

5
推荐指数
1
解决办法
2613
查看次数

office.js:Outlook Web 在约会关闭时显示“保存/放弃/取消”对话框

我有一个用新的 Javascript API (office.js) 编写的 Outlook 加载项。

我从日历中的约会的撰写表单中进行了一些操作(向正文添加主题后缀和一些文本)。完成操作后,我调用:

Office.context.mailbox.item.saveAsync(callback)
Run Code Online (Sandbox Code Playgroud)

包含更改的项目会被保存,但是当我在 Outlook Web UI 上致电Office.context.mailbox.item.close() 关闭约会撰写表单时 - 如果我想保存更改或放弃更改,则会显示一个对话框,尽管自saveAsync通话以来没有进行任何更改。

无论用户是单击“保存”还是“放弃”,约会都具有我在saveAsync调用前使用加载项所做的更改。这种行为的原因是什么?

outlook-addin office365 office-app office-js

5
推荐指数
0
解决办法
210
查看次数

如何使 Outlook 插件维护 URL 片段以支持单页应用程序?

我发现启动 Outlook 加载项时,您在清单中配置的 URL 不会保留片段 URL,这会破坏单页应用程序 (SPA)。如果您只是尝试转到 SPA 的默认路由(例如index.html),那么它工作正常,但如果您尝试直接转到应用程序内的片段URL(路由),那么它就不起作用,例如index.html#我的页面

\n\n

index.html#mypage实际上更改为:\ nindex.html?et=&_host_Info=Outlook|Web|1\xe2\x80\xa6_1480636166782|ocii1|https://outlook.office.com/owa/?realm=XYZ.com#&_serializer_version=1mypage&_xdm_Info=-133b2041_-3d735892_1480636166782|ocii1|https://outlook.office.com/owa/?realm=XYZ.com

\n\n

有关该问题的进一步说明可以在此处找到:\n https://camerondwyer.wordpress.com/2016/12/02/issues-launching-outlook-add-ins-directly-to-a-spa-route-using-片段网址/

\n\n

目前,我无法选择迁移到 HTML5 样式 URL,因此 SPA 内的路由需要使用片段 URL (hashbang)。我想任何尝试启动加载项并在 URL 中传递参数的人都会遇到类似的问题。

\n

ms-office outlook-addin single-page-application

5
推荐指数
0
解决办法
112
查看次数

Office VSTO 加载项可能存在权限问题 - HRESULT 0x80004004 (E_ABORT)

我们开发了一个 C# Office VSTO 加载项,它与正在运行的 Outlook 实例进行通信(或启动一个新实例),并且在尝试创建 Outlook 任务或约会时,它在某些客户 PC 上显示出存在权限问题的迹象。 。

异常消息如下:

操作中止(HRESULT 异常:0x80004004 (E_ABORT))

这发生在这里:

Outlook.Account DefaultAccount = null;
Outlook.Application outlookApp = GetOutlookApp();    //returns Application object of running Outlook instance / creates a new instance - it works for them.

DefaultAccount = GetAccountForFolder(outlookApp);    //returns the default account of the user. Tried it with a simple setup, only one account etc. - it works for them
String defaultemailaddress;

//CODE RUNS UNTIL THIS POINT
if (DefaultAccount == null)    //if somehow …
Run Code Online (Sandbox Code Playgroud)

c# outlook vsto office-addins outlook-addin

5
推荐指数
1
解决办法
1033
查看次数

直接从 Outlook 加载项调用 Microsoft Graph API

我有一个基于 React 的 SPA Outlook 插件,我正在尝试直接调用 Microsoft Graph API。

有没有办法利用Office.context.mailbox.getCallbackTokenAsync()Office.context.auth.getAccessTokenAsync()获取 AccessToken 以直接从外接程序调用图形 API?

据我所知, getCallbackTokenAsync() 将允许我直接调用 Outlook REST API(我遇到了范围令牌的问题,因为我的清单权限未设置为 ReadWriteMailbox),并且 getAccessTokenAsync() 提供的 SSO 令牌将仅如果我将它传递到某处的服务器以“代表”OAuth 请求运行,则可以工作。

我不想通过 SSO 流通过服务器代理我的所有图形请求,但到目前为止,这是我看到的唯一解决方案。

outlook outlook-addin office365 outlook-restapi microsoft-graph-api

5
推荐指数
0
解决办法
575
查看次数