天道酬勤,学无止境

outlook

Outlook sample addin added, but it is not shown

问题 我从这里获取了示例 Outlook 插件 https://github.com/OfficeDev/Outlook-Add-in-JavaScript-ModuleExtension 如果我将该插件添加到我已安装的 Outlook 应用程序(通过“管理加载项”打开的 URL https://exchange.contoso.com/ecp/Extension/InstalledExtensions.slab?rfr=olk&exsvurl=1&realm=contoso.com )导航栏条目未显示在我的 Outlook 2016 中。 根据示例描述,它应该是这样的: 但“计费时间”部分不显示导航栏,甚至在“选项”下也不显示。 我的 Outlook 2016 是 16.0.7369.2130 German,底层 Exchange Server 是 Exchange 2013 CU 11,这可能是个问题吗? 回答1 问题是 Exchange 2013 不支持这种类型的加载项,并且无法将不受支持的加载项类型发送到支持它的客户端。 此外,无法绕过 Exchange 服务器将这种类型的加载项直接导入 Outlook 客户端。 当然,这在任何地方都没有记录。 针对 Exchange 2016 服务器或 Office 365,加载项按预期工作。

2022-05-17 05:37:12    分类:技术分享    outlook   outlook-addin

Runtime error when attempting to delete a worksheet from a newly created workbook - Outlook VBA

问题 我有一个 Outlook 宏,可以将用户Tasklist导出到存储在网络驱动器上的 Excel 电子表格中。 我正在尝试检查目录中是否已经存在工作簿(如果语句采用此处的形式)。 如果没有,则使用一个名为“Sheet 1”的工作表创建一个新工作簿,如果已经有一个具有正确用户名的工作簿,则打开它(添加从此处获取的语句): Dim FilePath As String Dim TestStr As String Dim objExcel As New Excel.Application Dim exWb As Excel.Workbook Dim NAME_s As String objExcel.DisplayAlerts = False 'Use the Application Object to get the Username NAME_s = Environ("USERNAME") FilePath = "the\directory\" & NAME_s & ".xlsx" TestStr = "" On Error Resume Next TestStr = Dir(FilePath) On Error GoTo 0 If TestStr = "" Then Set exWb = objExcel.Workbooks.Add(1) exWb.Worksheets(1)

2022-05-16 23:37:04    分类:技术分享    excel   vba   outlook

getactiveObject command fails for windows 8 and windows 10

问题 我在下面有以下 Powershell 代码,我已将其编译为可执行 (.exe) 文件,并将其打包到 SCCM 中以针对 100 个用户进行推送。 我已将 SCCM 包设置为以“以用户身份安装”而不是以管理员身份运行。 该软件包成功捕获了 Windows 7 用户的数据,但任何安装了 Windows 8/10 的用户都无法捕获我需要的数据。 我做了一个 try/catch 语句并得到了这个错误 - “ 使用“1”参数调用“GetActiveObject”的异常:“操作不可用(来自 HRESULT 的异常:0x800401E3 (MK_E_UNAVAILABLE))” 我试图理解为什么相同的代码可以在 Windows 7 机器上完美运行,但在 Windows 8/10 上却不能。 有解决办法吗? 我想避免使用“New-Object -ComObject 'Outlook.Application'”,因为我不想在后台创建一个新的 Outlook 进程(害怕破坏用户正在运行的 Outlook 会话)。 我需要运行 Powershell 代码来捕获正在运行的Outlook 进程。 请帮忙。 谢谢 $mail = [Runtime.Interopservices.Marshal]::GetActiveObject('Outlook.Application') $name = $mail

2022-05-16 19:33:05    分类:技术分享    c#   vba   powershell   outlook   SCCM

getting exception :javax.mail.AuthenticationFailedException: 550 5.2.1 Mailbox cannot be accessed

问题 通过 Outlook 发送电子邮件时出现此异常。 props.put("mail.smtp.auth", "true"); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.host", "outlook.office365.com"); props.put("mail.smtp.port", "587"); 但是从gmail我可以发送邮件但我不能通过outlook发送..任何人都可以帮助我解决这个问题... 不,它不是重复的.. 如果我传递了错误的用户名和密码,它显示我为“身份验证失败” ,但是当我提供正确的用户名和密码时,它显示为“无法访问邮箱” 回答1 5.2.1:无法访问邮箱 可能的原因: 无法访问邮箱。 邮箱可能处于脱机状态、已禁用或邮件已被规则隔离。 要解决的附加信息: 检查收件人数据库是否在线、收件人邮箱是否已禁用或邮件已被隔离。 使用命令解决: 无法访问邮箱。 也许消息太大了。 或者,邮箱已被禁用或处于脱机状态。 检查收件人的邮箱。 否则可能是权限问题,尤其是在公用文件夹上。 如果是这样,试试这个 PowerShell 命令: get-PublicFolderClientPermission "\ProblemFolder" 资源链接: http://osticket

2022-05-16 08:19:09    分类:技术分享    java   email   outlook

Copy the body of an email into Excel using VBA

问题 我想选择特定电子邮件的正文,将其复制并粘贴到 Outlook 中。 我知道在电子表格中按 Ctrl + A 然后按 Ctrl + C 会更容易,但这是涉及报告自动化的更大过程的一部分。 Sub GetFromInbox() Dim olApp As Outlook.Application Dim olNs As Outlook.Namespace Dim olFldr As Outlook.MAPIFolder Dim olItms As Outlook.Items Dim olMail As Variant Dim i As Long Set olApp = New Outlook.Application Set olNs = olApp.GetNamespace(”MAPI”) Set olFldr = olNs.GetDefaultFolder(olFolderInbox) Set olItms = olFldr.Items olItms.Sort “Subject” i = 1 For Each olMail In olItms If InStr(olMail.Subject, “Criteria") > 0 Then ThisWorkbook.Sheets("YourSheet").Cells(i, 1).Value = outMail.Body i = i + 1

2022-05-16 03:22:28    分类:技术分享    excel   vba   outlook

VSTO Outlook ItemSend with C#

问题 我正在尝试使用 VSTO 在 Outlook 电子邮件正文的末尾添加一个字符串 private void ThisAddIn_Startup(object sender, System.EventArgs e) { this.Application.ItemSend += new Microsoft.Office.Interop.Outlook.ApplicationEvents_11_ItemSendEventHandler(Application_ItemSend); } void Application_ItemSend(object Item, ref bool Cancel) { if (Item is Outlook.MailItem) { Outlook.MailItem mail = (Outlook.MailItem)Item; mail.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML; mail.Body += "My Sample Text"; mail.Save(); } } 当我使用 F5 从 VStudio 运行我的代码时,该应用程序没有在我的断点处停止,并且电子邮件不包含添加的行 我能做些什么呢? 注意:我正在使用 VS2008 和 Outlook

2022-05-15 22:05:04    分类:技术分享    c#   outlook   vsto

Downloading Attachments from Unread Emails of MS Outlook

问题 我想从我的 MS Outlook 下载所有未读电子邮件的附件。 我在StackExchange上找到了下面提到的代码,它从第一封未读电子邮件中下载附件。 任何人都可以修改此代码,以便我可以将其应用于所有未读电子邮件。 Const olFolderInbox As Integer = 6 '~~> Path for the attachment Const AttachmentPath As String = "C:\" Sub DownloadAttachmentFirstUnreadEmail() Dim oOlAp As Object, oOlns As Object, oOlInb As Object Dim oOlItm As Object, oOlAtch As Object '~~> New File Name for the attachment Dim NewFileName As String NewFileName = AttachmentPath & Format(Date, "DD-MM-YYYY") & "-" '~~> Get Outlook instance Set oOlAp = GetObject(, "Outlook.application") Set oOlns = oOlAp.GetNamespace("MAPI") Set

2022-05-15 18:51:08    分类:技术分享    vba   email   outlook

Pasting python's tabulate output to Microsoft Office editors

问题 我经常需要将 SQL 编辑器中的小表格复制粘贴到 Microsoft Office 程序(Outlook 和 OneNote)中,并且我希望它在粘贴时看起来不错。 所以我写了一个简短的脚本,从剪贴板中获取数据,用 Tabulate 处理它并将其返回到剪贴板。 当我将新表粘贴到 Notepad++ 和其他编辑器中时,这非常有效。 当我粘贴到 Outlook 中时,它完全搞砸了。 如果我粘贴到记事本++,然后从那里复制粘贴,一切都很好。 我尝试了不同的表格格式,并尝试使用 Outlook 的编辑器选项。 真的很感激任何见解! 谢谢! 见代码: import win32clipboard import pandas as pd from tabulate import tabulate df = pd.read_clipboard() head = df.columns.tolist() val = df.values table = tabulate(val,headers=head,tablefmt="grid") # set clipboard data win32clipboard.OpenClipboard() win32clipboard.EmptyClipboard() win32clipboard.SetClipboardText(str(table))

2022-05-15 18:50:12    分类:技术分享    python   outlook

Adding users to Exchange admin role groups via API?

问题 是否可以通过 API 将用户/成员添加到 Exchange 管理员角色组? 等效的 PowerShell cmdlet 是Add-RoleGroupMember ,我希望添加到的特定组是View-only Organization Management 。 Microsoft Graph 有一个可以添加到目录角色的端点,但是我似乎在租户的 DirectoryRoles 或 DirectoryRoleTemplates 中找不到“仅查看组织管理”组,因此我怀疑 MS Graph 无法访问这些 Exchange 角色团体。 对 Outlook API 的探索也没有以用户/成员函数的形式显示太多。 通过进一步探索添加的额外信息 我运行了这个 PowerShell cmdlet: Add-RoleGroupMember -identity“仅查看组织管理”-member“user@domain.onmicrosoft.com” 然后跑: Get-RoleGroupMember -identity "仅查看组织管理" 确认用户实际上已添加到其中。 然后我运行了以下 MS Graph 调用: 获取 https://graph.microsoft.com/v1.0/users/user@domain.onmicrosoft.com/memberOf 它返回了 zip: { "@odata

2022-05-15 15:21:17    分类:技术分享    outlook   office365   microsoft-graph-api   azure-ad-graph-api   outlook-api

Using AdvancedSearch for Outlook with C# Returns Zero Results

问题 我正在尝试在我的收件箱和所有子文件夹中搜索主题行中的给定字符串。 我在网上找到了以下代码(https://www.add-in-express.com/creating-addins-blog/2012/05/31/outlook-search-csharp-vbnet/),但它返回零结果,即不是预期的结果。 我在 Outlook 的视图设置下查看了在 Outlook Explorer 中返回结果的给定搜索词的过滤器,并得到了以下查询:“http://schemas.microsoft.com/mapi/proptag/0x0037001f”LIKE '%Ticket%'当我将其插入下面的代码时,我同样得到零结果。 当我使用 LINQ 查询这些文件夹时(LINQ 太慢,无法成为真正的解决方案),我可以得到结果,所以我猜我在使用高级搜索时出现了语法错误。 很难在网络上找到使用示例。 我会感谢任何可以帮助我的人。 private Search RunAdvancedSearch(Outlook._Application OutlookApp, string wordInSubject) { string advancedSearchTag = "New Search"; string scope = "Inbox"; string filter = "\"urn:schemas

2022-05-15 14:49:13    分类:技术分享    c#   search   outlook   advanced-search