在C中访问outlook 2013的电子邮件VSTO加载项的原始邮件源#
大家好, 我的要求是我想在 windows 中访问 Outlook 2013 中的原始邮件源(如果您右键单击任何电子邮件,然后在 Mac 中的 Outlook 15.29 中单击“查看源",则可以找到相同的内容).我的问题是我找到了方法标头部分使用 Mapi 标头,但无法找到整个正文的原始源. 一些链接建议使用 0X1000001E 和 0X0000001F(带有 MAPI 接口)可以访问正文部分,但在尝试时,它给了我未经授权的访问例外. 一些链接还说 MAPI 属性不支持它,因为他们不知道身体部分会有多大.但是我怀疑,因为它是非常古老的帖子.我有我的 vsto 添加(在 C# 中),我正在使用 MailItem 对象. 在一些论坛中,人们建议 windows 不存储原始 mime 源.我还使用了注册键“SaveAllMimeNotJustHeaders".但是即使在windows中点击查看邮件源后,我也只能看到正文的html部分. 您能否建议我任何解决方法
118 2022-07-19
编程技术问答社区
如何使删除的电子邮件自动标记为已读?
在 Outlook 2016 中如何使已删除的电子邮件自动标记为已读? 在以前的版本中,VBA 代码有效,但我在 Outlook 2016 中找不到任何有效的代码. 感谢您的帮助! 解决方案 您好, 由于 Outlook 中没有可用于实现目标的内置选项,我会将您的问题移至 Outlook 开发论坛,看看是否可以通过 VBA: https://social.msdn.microsoft.com/Forums/office/zh-CN/home?forum=outlookdev 我们建议适当发帖的原因是您将获得最合格的受访者群体,并且定期阅读论坛的其他合作伙伴可以分享他们的知识或从您与我们的互动中学习.感谢您的理解. 问候, 史蒂夫·范
208 2022-07-19
编程技术问答社区
连接器卡限制
您好,想知道在发送连接卡时是否有任何方法可以更改文本大小/字体,除了基本的降价标记 解决方案 您好约旦, Outlook 对象模型没有为此提供任何东西.
138 2022-07-19
编程技术问答社区
Outlook加载项自动将加载行为设置为2
我看过很多关于这个问题的帖子,但似乎没有一个真正的答案. 我的加载项在 Outlook 启动时创建并检查用户 Outlook 中的联系人列表.但是,最近加载项已立即将 LoadBehavior 注册表项设置为“2"并且从未实际运行. 我是否可以运行任何其他检查来查看导致此问题的原因?它以前可以工作,只是偶尔将行为更改为“2",但现在每次加载应用程序时都会这样做. 解决方案 你好乔希, Microsoft Office 应用程序可以禁用行为异常的 VSTO 加载项.如果应用程序未加载您的 VSTO 插件,则该应用程序可能已硬禁用或软禁用了您的 VSTO 插件. 当 VSTO 外接程序导致应用程序意外关闭时,可能会发生硬禁用.如果您在 启动 事件VSTO 外接程序中的处理程序正在执行. 当 VSTO 外接程序产生不会导致应用程序意外关闭的错误时,可能会发生软禁用.例如,如果在 启动 事件处理程序正在执行.在 中阅读更多相关信息如何:重新启用已禁
260 2022-07-19
编程技术问答社区
有没有一种方法可以创造“预约”的效果
嗨 有没有办法以编程方式创建 Outlook 用户定义属性的“约会 - 此项目中的用户定义字段"动态集合. 到目前为止,似乎需要预定义字段. 我最初的发现正确吗? 非常感谢 斯图尔特 解决方案 你好斯图尔特, Outlook 对象模型提供了处理用户定义字段的单一方式. 您可以通过调用 UserProperties.Add Outlook 项目或文件夹的方法,或UserDefinedProperties.Add 方法文件夹. 您可以创建由 OlUserPropertyType 枚举,以下类型除外: olEnumeration, olOutlookInternal,和 olSmartFrom. 第一次设置由 UserProperties.Add 方法,使用 UserProperty.Value 属性而不是 SetProperties 和 SetProperty 方法 PropertyAccessor object. 例如
278 2022-07-19
编程技术问答社区
如何满足用户对outlook电子邮件无法阅读的要求?
我们正在开发一个 Outlook 插件.像这样的一个需求,在某些场景下,用户不能在他的send box、in box、delete box中阅读邮件…… 我们尝试过但失败了.因为即使是插件也可以禁止用户“打开"邮件,用户也可以“阅读"邮件. 在调度接口 ItemEvents_10 中, 开启事件功能: [id(0x0000f003), helpcontext(0x000001da)] HRESULT 打开([in, out] VARIANT_BOOL* Cancel); 读取事件函数: [id(0x0000f001), helpcontext(0x000001e0)] HRESULT 读取(); Read() 没有 Cancel 参数. 我们怎样才能让电子邮件无法阅读? 非常感谢您. 狮子座 解决方案 据我所知,outlook使用DirectUI绘制窗口,很难子类化窗口,可能需要捕获鼠标
114 2022-07-19
编程技术问答社区
使用VB脚本从Outlook联系人导出自定义字段
我有成功将 Outlook 联系信息导出到 csv 文件的代码,但我看不到如何导出自定义字段. 有什么建议吗? 这是我的代码: Sub SaveContactsinFile()出错时转到错误处理将 MyCount 调暗我的计数 = 1将 MyType 调暗为字符串将 objOutlook 调暗为 Outlook.Application将 objNS 调暗为 Outlook.NameSpace将 objFolder 调暗为 Outlook.MAPIFolder将 olItems 变暗为 Outlook.ItemsDim olContact As Outlook.ContactItem将 objFS 调暗为新的 Scripting.FileSystemObject,objFile 作为 Scripting.TextStream暗淡 strFile 作为字符串Dim sName 作为字符串设置 objNS = Application.GetNamespace("MAPI")' 名
106 2022-07-19
编程技术问答社区
将收到的邮件保存到。tif自动格式化
嗨,团队, 我在 Outlook 中的电子邮件中收到传真确认.这些通常是一页.我需要将这些确认以 .tif 格式上传到文档管理器中. 所以我想知道是否有一种方法可以在这些电子邮件进入时自动将它们保存为 .tif, 可能使用宏. 谢谢, Bharat Devana 解决方案 你好, Outlook 对象模型不提供将邮件项保存为 .tif 的任何属性或方法. 格式可以是以下 OlSaveAsType 常量之一:olHTML、olMSG、olRTF、olTemplate、olDoc、olTXT、olVCal、olVCard、olICal 或 olMSGUnicode.欲了解更多信息,请访问MailItem.SaveAs 方法 (Outlook). 所以如果你想把它保存成其他格式,你可以使用第三方工具或API来转换. 为了在邮件到达时保存邮件,我们可以处理 Application.NewMail 事件 (Outlook) 或者在 mai
84 2022-07-19
编程技术问答社区
从约会中获取HTML正文并再次修改和设置
大家好, 我有一个 Outlook 插件应用程序,我正在使用插件创建约会 (Outlook.AppointmentItem). 这里我想通过代码获取约会 html 正文,我使用 Outlook.AppointmentItem obj.Body 获取它但它是纯文本格式. 我将如何获得 html 格式的正文(彩色内容)? 一旦我得到,将修改内容并想要设置修改后的内容 在事件“void Application_ItemSend(object Item, ref bool Cancel)"中所以接收者将获得彩色修改的 html 内容而不是纯文本 我在上述问题上需要立即帮助,请帮助. 问候 尼拉杰 Neeraj 解决方案 你好 Neeraj, 您需要改用 RTFBody 属性.参见 什么是超链接的 RTF 语法 对于 RTF标记. 另外你可以考虑使用Word对象模型来处理item身体.在 章节17:使用物品实体 articl
114 2022-07-19
编程技术问答社区
Showstopper:Windows 10 Creator更新(1703)后Outlook MAPI性能出现大问题
大家好, 我们的 Outlook 插件在 Windows 10 下运行良好且性能非常好. 在 Windows 10 Creator Update 之后,所有用户都抱怨性能急剧下降. 我开始使用调试器/分析器进行研究,最后我找到了几个 最耗时的 MAPI 方法. 它是 MAPIAllocateMore/MAPIAllocateBuffer/MAPIFreeBuffer. 看起来这些方法在 IMessage::CopyTo 功能中被积极使用 已读取 MSG 文件. 我们使用 MFCMapi 源(出色的工作)作为示例,并通过这些调用读取 MSG 文件 - 它是简短的提取 iMessage* pMessage; HRESULT hr = piFolder->CreateMessage(NULL, 0L, &pMessage); hr = ::StgOpenStorage(
106 2022-07-19
编程技术问答社区
在当前选定行检测蓝色电子邮件回复
大家好, 我想检测蓝色电子邮件回复线(见下图)是否在当前选定的行并执行一些操作.这可以检测到吗?我认为观察当前选择的 ParagaphFormat 可能是可行的. 詹斯 解决方案 你好, 我相信您可以使用 Word 对象模型来检测蓝线.Inspector 类的 WordEditor 属性返回表示消息正文的 Document 类的实例.看第 17 章:使用项目实体了解更多信息.
142 2022-07-19
编程技术问答社区
Outlook 2010无任何PKI/证书/签名的自定义Algo对称加密
Outlook 是否允许这样做?请详细说明. 如果是,怎么做,或者有现成的来源?(我更喜欢 Delphi XE+ 但也下载了 VS C++ Express) 当然,它对严肃的身体毫无意义,只是注定要对付“好奇"的人.电子邮件托管公司的人. 感谢所有愿意提供帮助的人. 解决方案 你好, 您可以开发一个自定义解决方案,您可以在其中使用您喜欢的任何算法加密正文.要实现这一点,您必须开发一个 Outlook 加载项,该加载项应安装在两端以加密/解密消息.看演练:为 Outlook 创建您的第一个应用程序级加载项以获取开始了.请注意,Express 版不允许开发基于 VSTO 的加载项.然而,你可以使用任何 IDE 开发实现 的加载项所有加载项都应实现的 IDTExtensibility2 接口(也基于 VSTO).请注意,您可以使用不久前推出的 VS2013 社区版来开发基于 VSTO 的插件. 最后,您可以阅读更多关于 MSDN 中的 Outlook
114 2022-07-19
编程技术问答社区
收件人的Outlook电子邮件文本或HTML格式
我们有一个 Outlook 插件,它会在每封发送的电子邮件中发送一些 HTML.如果收件人视图设置是文本电子邮件而不是 HTML,我们需要添加 mime 类型标头以确保它呈现文本模板. 关于如何实现它的任何想法. 谢谢. 解决方案 基本上我们需要两个电子邮件模板 - 一个用于 HTML 视图呈现,另一个用于文本视图呈现,以便正确的模板呈现在收件人处.
160 2022-07-19
编程技术问答社区
打开文件夹位置Office 2016 Ribbon Outlook 2016
我想知道是否可以自定义 Outlook 2016 功能区以在 INSERT 功能下添加 - 打开特定文件夹位置的命令.我看到可以在 Outlook 中添加许多命令的位置 /办公室功能区.但我没有看到任何地方添加一个命令图标以对其进行编程以打开本地 PC 上的特定文件夹位置或位于共享网络驱动器上的文档. 目前我们不得不浏览以查找要附加到电子邮件的文件,但是,一个简单的功能区命令(单击)会很好. 不确定是否可以这样做.. 提前感谢您提供任何信息 解决方案 嗨, 此请求无法通过 Outlook 内置功能实现,但可以通过开发加载项实现.我会将您的问题移至 Outlook 开发专用论坛.希望你能在那里找到答案. https://social.msdn.microsoft.com/Forums/office/zh-CN/home?forum=outlookdev 感谢您的理解和支持. 问候, 史蒂夫·范
238 2022-07-19
编程技术问答社区
其他用户未收到FormRegion中的自定义文件
大家好, 设置:Exchange 2010 - Outlook 2016 - 相同的 Exch 组织 我用一些用户定义的字段创建了一个约会 FormRegion.在本地一切正常:显示区域和保存自定义字段值. 当我发送该约会时,即通过安排会议,其他用户(具有相同的工作 FormRegion)不会收到 FormRegion 中的自定义数据. 怎么了? 谢谢 马里奥 解决方案 你好马里奥, 应在配送商店中定义用户定义字段,否则将被删除.这Outlook 中对自定义属性的更改 文章指出以下内容: Outlook 会忽略不存在的自定义属性.如果交付商店中不存在自定义属性,则不会创建该属性,并且其值将丢失.如果交付商店中已存在自定义属性,则其值为坚持.此更改适用于以下内容: 具有 TNEF 及其嵌入消息的 Internet 电子邮件. S/MIME 消息. .msg 文件,当您将 .msg 文件拖放到 Outlook 项目窗口中以将该文件添加到另一个
68 2022-07-19
编程技术问答社区
如何在OUTLOOK interop中打开时禁用弹出窗口警告
你好. 描述了这个资源中的问题,请帮助遇到过的人. 解决方案 嗨 lvan Kordyak, 感谢您在这里发帖. 根据你的问题更多与outlook相关,我将其移至Outlook为开发者提供合适的支持 论坛. 本论坛讨论和询问C#编程语言、IDE、库、示例和工具. 如果您有语法或代码错误,请随时联系我们.我们会尽力为您提供解决方案. 最好的问候, 温迪
62 2022-07-19
编程技术问答社区
对RTF消息使用put_body()附加正文将附件移动到电子邮件的末尾。
嗨, 我需要为富文本电子邮件附加字符串.当用户单击发送按钮时,我会收到通知.我收到 Outlook::Applications 的事件.当我收到通知时,我正在使用 Outlook::_MailItems 并使用 put_body() 方法附加字符串.但是,这正在改变添加的附件的位置.我尝试使用 put_position() 但它没有用.有没有其他方法可以使附件不被推到身体的末端? 提前致谢. 解决方案 更糟糕的是,设置纯文本 Body 属性还会清除所有格式HTML 和 RTF 消息. 您需要设置 HTMLBody 或 RtfBody 属性(取决于消息格式).请注意,在这两种情况下,旧数据和新数据都不能连接,它们必须合并.
94 2022-07-19
编程技术问答社区
何在ToDo bar日历部分的会议上添加上下文菜单。
各位专家, 我想知道是否有任何方法可以在出现在 Outlook 2016 的待办事项栏的日历部分的会议上添加上下文菜单.我想知道添加一个菜单,通过它我可以直接加入 Skype 会议而不是打开在全视图中开会,然后点击加入 Skype 会议. 谢谢, 乌特卡什乔汉 解决方案 你好乌特卡什, 我认为不可能在 ToDoBar 上添加上下文菜单. Office Fluent Ribbon 自定义不支持内置任务窗格. 我还尝试使用 Application.ActiveExplorer().CurrentView.XML 来获取 XML.但是,当我显示或隐藏 ToDoBar 时,XML 没有区别. 问候, 蔚
86 2022-07-19
编程技术问答社区
c#展望。文件夹显示。。。如何将显示的计数从未读的蓝色nnnn更改为所有项目的绿色[nnnnn]
我创建了一个新的 .pst 并添加了商店,root 并找到了我的新商店的句柄,现在我想 赋予它特定的属性,例如它在文件夹列表/面板中的显示顺序,并显示每个文件夹中的项目总数, 不仅仅是未读计数. 卡伦博士 (drdbkarron) 在 facebook 和 drdbkarron@gmail.com 解决方案 你好, 文件夹集合不能以任何方式排序.见 https://blogs.msdn.microsoft.com/stephen_griffin/2013/11/08/mapi-provider-sorting/ for有关 Outlook 如何对文件夹顺序进行排序的更多信息.
90 2022-07-19
编程技术问答社区
c#展望。百货商店DisplayName只读?如何设置?
我想为每个商店的显示名称提供 .pst 的路径 我该怎么做? 卡伦博士 (drdbkarron) 和 drdbkarron@gmail.com 解决方案 你好, 由于业务规则集,Outlook 对象模型限制了某些操作.但是,您可以使用低级代码 - 扩展 MAPI 或围绕该 API 的任何其他第三方包装器(例如 Redemption)来设置商店的显示名称. PR_DISPLAY_NAME(DASL 名称是 http://schemas.microsoft.com/mapi/proptag/0x3001001F)是您所需要的.
200 2022-07-19
编程技术问答社区