首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从outlook vsto加载项以编程方式创建pst

Outlook VSTO加载项是一种用于扩展Microsoft Outlook功能的工具。通过使用VSTO(Visual Studio Tools for Office),开发人员可以使用.NET编程语言(如C#或VB.NET)创建自定义的Outlook加载项。在这个问答中,我们将讨论如何使用Outlook VSTO加载项以编程方式创建PST文件。

PST文件是Outlook中的个人文件夹文件,用于存储邮件、日历、联系人等数据。通过编程方式创建PST文件可以实现自动化的数据管理和备份。

要从Outlook VSTO加载项以编程方式创建PST文件,可以按照以下步骤进行操作:

  1. 创建一个新的Outlook VSTO加载项项目:在Visual Studio中,选择“新建项目”,然后选择“Office”或“Visual C#”类别下的“Outlook 2013和2016 VSTO加载项”模板。
  2. 在加载项项目中添加必要的引用:右键单击项目,选择“添加引用”,然后选择“COM”选项卡,找到并选中“Microsoft.Office.Interop.Outlook”引用。
  3. 在加载项代码中编写创建PST文件的逻辑:在加载项的代码文件中,使用Outlook对象模型来创建PST文件。以下是一个示例代码片段:
代码语言:txt
复制
using Outlook = Microsoft.Office.Interop.Outlook;

// 创建PST文件
public void CreatePSTFile(string filePath)
{
    Outlook.Application outlookApp = new Outlook.Application();
    Outlook.NameSpace outlookNamespace = outlookApp.GetNamespace("MAPI");
    Outlook.Folder rootFolder = outlookNamespace.DefaultStore.GetRootFolder();
    Outlook.Folder newFolder = rootFolder.Folders.Add("New PST Folder");
    newFolder.CopyTo(filePath);
}

在上述代码中,我们使用Outlook对象模型中的相关类和方法来创建一个新的PST文件,并将其保存到指定的文件路径。

  1. 构建和部署加载项:完成代码编写后,可以构建加载项项目,并将生成的加载项文件(.dll或.vsto)部署到目标计算机上的Outlook应用程序中。

需要注意的是,上述代码仅为示例,实际的实现可能会因具体需求而有所不同。在实际开发中,还可以添加错误处理、用户界面等功能。

关于Outlook VSTO加载项和PST文件的更多信息,可以参考腾讯云的相关产品和文档:

  • 腾讯云产品推荐:腾讯云企业邮箱(https://cloud.tencent.com/product/exmail)
  • VSTO加载项开发指南:https://docs.microsoft.com/zh-cn/visualstudio/vsto/office-solutions-development-overview?view=vs-2022
  • Outlook对象模型参考文档:https://docs.microsoft.com/zh-cn/office/vba/api/overview/outlook
  • PST文件格式说明:https://docs.microsoft.com/zh-cn/office/client-developer/outlook/mapi/pst-format?view=outlook-pst-2019
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

OFFICE插件管理工具更新,让你安装使用OFFICE插件无忧

新增功能20201230 新增对VSTO插件安装后启动时报一个type属性错误的处理方式。原理其实很简单,就是把这个文件删除即可,为懒癌服务,一键删除。 ? ?...新增功能20200902 在名称叫法上,用回加载这个名称,防止大家和OFFICE的叫法对不上,OFFICE加载,现在有3类,分别是COM加载,普通加载和Web加载。 ?...六、打开OFFICE加载文件夹 前面提到,本工具仅对COM加载的插件进行管理,普通加载如Excel的xlam结尾的文件(使用xll技术开发的插件,同样会落在此清单范围内,如Excel催化剂开发的自定义函数和...EasyShu图表插件),一般来说,会将其放到加载文件夹里,然后Excel会自动到此位置找寻所有的普通加载插件,将其清单的方式返回给用户去勾选与否。...其快捷的打开方式为在功能区里打开【开发工具】选项卡,可快速通过【Excel加载】定位到此加载清单。

2K30

【追加视频】OFFICE插件管理工具重整后再上路,更好用易用。

功能说明 OFFICE插件管理工具,由此名字可知,其针对的对象,已经不局限于Excel催化剂单款插件使用,乃是扩充至OFFICE大家族的所有成员,如Excel、Word、PowerPoint、Outlook...一、遍历本机或当前用户下的所有COM加载插件 此处的插件清单仅为COM加载插件,一般性的普通加载不在此清单范围内,而且普通加载一般出问题不多,下文也会简单说明如何维护普通加载的插件。...六、打开OFFICE加载文件夹 前面提到,本工具仅对COM加载的插件进行管理,普通加载如Excel的xlam结尾的文件(使用xll技术开发的插件,同样会落在此清单范围内,如Excel催化剂开发的自定义函数和...EasyShu图表插件),一般来说,会将其放到加载文件夹里,然后Excel会自动到此位置找寻所有的普通加载插件,将其清单的方式返回给用户去勾选与否。...其快捷的打开方式为在功能区里打开【开发工具】选项卡,可快速通过【Excel加载】定位到此加载清单。

1.2K30
  • Office 365开发概述及生态环境介绍(一)

    如果说Office XP是我用得比较全的一个版本(除了Outlook没有怎么用,其他组件基本都对照帮助文档摸了一遍,还用FrontPage做出了人生第一个奇丑无比的网站,但其实对那些所谓的开发完全是一知半解...在多个Office客户端应用程序中都一直保留对这个编程方式的支持。...前者不消多说,现在一般就是通过带有m后缀的文件名保存即可(例如xlsm, docm等),后者有一个更加专用的格式(例如xlam)和叫法(加载宏)。...这里就是我们熟悉的.NET编程的体验,可以用到几乎所有.NET Framework的功能,目前VSTO支持的开发语言除了VB.NET,还有C#。...,Office 2013开始,及至现在的Office 365家族,Web技术为基础、App为模型,微软为广大的开发人员提供了全新的开发支持,打开了一个新的视野。

    3K20

    攻击者使用 VSTO 接替宏进行武器化攻击

    微软的 Visual Studio IDE 中提供了一个软件开发工具集 VSTO,通过 VSTO 可以支持在 .NET 中开发 Office 加载,还允许创建能够执行这些加载的 Office 文档文件...VSTO 加载可以与 Office 文档关联在一起,也可以在打开 Office 文档时远程获取,当然这可能触发与信任相关的安全机制。...本地 VSTO 本地的 VSTO 会将 .NET 编译的 .DLL 加载及其依赖与为执行它而创建的 Office 文档存放在一起,例如 ISO 文件中。...提示用户安装 加载隐藏的加载 一旦用户允许安装,加载将被执行: VSTO 安装提示 分析加载,其中有经过编码和压缩的 PowerShell 代码: 核心代码 经过解码和解压缩后,可以看到该段代码为了...例如,恶意 Word 文档远程获取 VSTO 加载: 远程 VSTO 下载的 DLL 加载中,嵌入了下载加密的 ZIP 文件的代码。

    88230

    【追加功能】OFFICE插件管理工具重整后再上路,更好用易用。

    功能说明 OFFICE插件管理工具,由此名字可知,其针对的对象,已经不局限于Excel催化剂单款插件使用,乃是扩充至OFFICE大家族的所有成员,如Excel、Word、PowerPoint、Outlook...经过复制后,经反馈是有效的,一般VSTO技术开发的插件,都因为此项的修复得以改善,正常使用。...六、打开OFFICE加载文件夹 前面提到,本工具仅对COM加载的插件进行管理,普通加载如Excel的xlam结尾的文件(使用xll技术开发的插件,同样会落在此清单范围内,如Excel催化剂开发的自定义函数和...EasyShu图表插件),一般来说,会将其放到加载文件夹里,然后Excel会自动到此位置找寻所有的普通加载插件,将其清单的方式返回给用户去勾选与否。...其快捷的打开方式为在功能区里打开【开发工具】选项卡,可快速通过【Excel加载】定位到此加载清单。

    1.4K30

    VSTO之外的另一开发利器Excel-DNA介绍,VSTO与Excel-DNA优缺点分析

    顺便给大家介绍下,一个同样精彩的开发方式,使用Excel-DNA开发自定义函数加载。...面向对象编程,代码管理更方便,其实本人也不太有面向对象的编程思想,不能编出给其他人用的类,但却可以源源不断地用别人封装好的类库,属于编程群体中的使用者,非制造者。 2....非程序猿入门有难度,毕竟是专业的编程语言,不像VBA那么大众化,普通用户通过录制宏就可以打开编程世界 2.2....开发自定义函数的利器,VSTO开发自定义函数在发布给用户机器使用时麻烦,要对注册表注册,需要管理员权限,但Excel-DNA开发的完全没有这些烦恼,用户双击即可打开使或进行加载载入,下次打开Excel...用户发布友好,直接一个xll文件发给用户,用户不需安装即可使用,无需管理员权限,无需访问注册表权限,和xlam加载宏的效果一样。 1.10.

    4.9K41

    个人永久性免费-Excel催化剂功能第47波-VBA开发者喜爱的加密函数类

    题外话 本人也是Excel的VBA语言入门了编程世界的,然后很偶然的机会接触到VSTO,并且在一位热心的网友一路的帮助下,算是入门了C#语言,现在可以灵活地用C#实现自己想要的一些小功能(大部分是抄百度和...能够使用Application.Run来调用的前提是自定义函数的加载已经被加载,即xll文件已经被Excel加载进来。...如果使用代码来加载xll,也不复杂,使用AddIns.Add 方法,如下图所示 ?...总结 在我过往发表的众多自定义函数里,大部分直接照搬了.Net Framework类库里的函数,让其能够在Excel环境自定义函数的形式来使用,当中也收到许多反馈说能用自定义函数的人都自己写VBA代码...,且需可连接外网的方式实现自动更新机制,若下载安装过程中有任何疑问或需要离线版安装等,尽量不单独私聊询问,加QQ群可高效解决(群内已汇集了VSTO开发、Powerbi技术、Sqlserver商业智能等方面的国内顶尖大牛人物

    3.2K10

    Outlook应用指南(3)——联系人管

    在邮件的浏览区里,将鼠标移至发件人名称上,点击右键,在弹出的快捷菜单中选择【添加到Outlook联系人】命令,即可快速创建一个新的联系人。 ?...(3)、文件类型选择“个人文件夹.pst”,单击【下一步】。 ? (4)、在选出导出文件夹的位置中,选择“联系人”,单击【下一步】。 ? (5)、自定义保存位置。单击【完成】。 ?...生成的pst文件可以妥善保存起来,一旦需要还原Outlook联系人的信息,我们可以再次同样执行【导入和导出】功能,选择“另一程序或文件导入”操作即可进行数据的还原。 5....为了方便与客户的业务往来,你可以为自己创建一个电子名片,并将其转发给相关联系人,以便日后进行联系。...首先为新建“联系人”,把自己的信息详细填写好,然后执行【动作】菜单下的【作为vCard转发】命令,Outlook就将会自动新建一封电子邮件,并将此联系人的信息附件的形式附加在此邮件中(vcf文件),指定收件人

    1.8K10

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    Office VSTO加载加载到单独的 AppDomain 中[6]进行隔离。 DotNetBrowser 在非默认 AppDomain 中运行。...事实上,可以在不同的 AppDomain 中创建多个 Chromium 引擎并同时使用它们。因此,DotNetBrowser 可用于创建 VSTO 加载。...这是一相当复杂的任务,可能需要长达一个月的时间[8]。 在 DotNetBrowser 中默认禁用专有编解码器。可以通过编程方式启用它们,而无需重建库。...在其他情况下,浏览器内容可能无法正确呈现,例如: DotNetBrowser 不同的方式支持高 DPI。...General-Usage [5] CefSharp 不能在非默认 AppDomain 中使用: https://github.com/cefsharp/CefSharp/wiki/General-Usage [6] 将加载加载到单独的

    54040

    『JSA神助攻之三』将JSA宏另存为xlam加载方式供外部程序无感调用和手撸大法生成带JSA宏的xlam文件

    『WPS二次开发最新成果』使用外部程序/VSTO插件执行JSA宏 外部程序/VSTO插件执行JSA宏,可以将JSA宏保存到xlsm文件里,但更好的方式是保存到xlam文件里,用户更无感它的存在。...可以在外部程序/VSTO插件里直接使用Application.Addins.Add,将xlam文件加载进来。当然也可以直接修改注册表,让WPS表格每次启动时自动加载。...使用xlam文件,将它变成普通加载,不会出现一个新的工作薄的打开。使用体验更友好。 接着,如果用户想获得某个JSA宏嵌入到它的当下的工作薄里,这个又该如何处理。...1、在xl文件夹下添加上JDEData.bin文件,全路径为:【xl\JDEData.bin】 比较可喜的是,JSA宏的代码文件是个文本文件,并没有加密,也不知道未来它们会不会安全之名又给加密上,目前是可用了...有了本篇的进一步探索,也将JSA宏的应用场景,特别是第三方程序去调用、创建等环节,已经完全打通,接下来就是想象力的时间,一些特定场景,用上本篇的黑科技,产出的效果将是非常惊艳。

    16310

    『JSA宏神助攻之三』将JSA宏另存为xlam加载方式供外部程序无感调用和手撸大法生成带JSA宏的xlam文件

    『WPS二次开发最新成果』使用外部程序/VSTO插件执行JSA宏 外部程序/VSTO插件执行JSA宏,可以将JSA宏保存到xlsm文件里,但更好的方式是保存到xlam文件里,用户更无感它的存在。...可以在外部程序/VSTO插件里直接使用Application.Addins.Add,将xlam文件加载进来。当然也可以直接修改注册表,让WPS表格每次启动时自动加载。...使用xlam文件,将它变成普通加载,不会出现一个新的工作薄的打开。使用体验更友好。 接着,如果用户想获得某个JSA宏嵌入到它的当下的工作薄里,这个又该如何处理。...1、在xl文件夹下添加上JDEData.bin文件,全路径为:【xl\JDEData.bin】 比较可喜的是,JSA宏的代码文件是个文本文件,并没有加密,也不知道未来它们会不会安全之名又给加密上,目前是可用了...有了本篇的进一步探索,也将JSA宏的应用场景,特别是第三方程序去调用、创建等环节,已经完全打通,接下来就是想象力的时间,一些特定场景,用上本篇的黑科技,产出的效果将是非常惊艳。

    10610

    『WPS二次开发最新成果』使用外部程序VSTO插件执行JSA宏原创续篇

    『WPS二次开发最新成果』使用外部程序/VSTO插件执行JSA宏 外部程序/VSTO插件执行JSA宏,可以将JSA宏保存到xlsm文件里,但更好的方式是保存到xlam文件里,用户更无感它的存在。...可以在外部程序/VSTO插件里直接使用Application.Addins.Add,将xlam文件加载进来。当然也可以直接修改注册表,让WPS表格每次启动时自动加载。...使用xlam文件,将它变成普通加载,不会出现一个新的工作薄的打开。使用体验更友好。 接着,如果用户想获得某个JSA宏嵌入到它的当下的工作薄里,这个又该如何处理。...1、在xl文件夹下添加上JDEData.bin文件,全路径为:【xl\JDEData.bin】 比较可喜的是,JSA宏的代码文件是个文本文件,并没有加密,也不知道未来它们会不会安全之名又给加密上,目前是可用了...有了本篇的进一步探索,也将JSA宏的应用场景,特别是第三方程序去调用、创建等环节,已经完全打通,接下来就是想象力的时间,一些特定场景,用上本篇的黑科技,产出的效果将是非常惊艳。

    40110

    终于有一款组件可以全面超越Apache POI

    在 GrapeCity Documents出现以前,服务端文档组件向来Apache POI为代表,作为一款由Java编写的开源API库,Apache POI 主要应用于对Microsoft Office...如果想通过简单的代码逻辑,快速创建加载、编辑、导入/导出大型文档(Excel、Word、PDF),并将其部署到云端时,又该如何实现?...条件格式 GcExcel支持多种条件格式,如自定义图标集、判断是否高于平均值(AboveAverage)、发生日期判断、Top 10和重复判断,且这些条件格式的设置规则与VSTO保持一致。...但是,用户可以使用shiftRows()/ ShiftColumns()并以编程方式对数据进行排序。 切片器 GcExcel支持带有数据透视表的切片器,而Apache POI则不支持。 10....但是,可以使用编程方式创建相应的CSV / HTML文件。 11. 渐变填充 GcExcel支持渐变填充,而Apache POI不支持。 12.

    3.3K10

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    Office VSTO加载加载到单独的 AppDomain 中进行隔离。DotNetBrowser 在非默认 AppDomain 中运行。...事实上,可以在不同的 AppDomain 中创建多个 Chromium 引擎并同时使用它们。因此,DotNetBrowser 可用于创建 VSTO 加载。...可以通过编程方式启用它们,而无需重建库: InitializeCodecs.cs IEngine engine = EngineFactory.Create(new EngineOptions.Builder...这种方法总体上简化了 UI 创建并节省了大量时间和精力。 CefSharp 提供有限的设计器支持[12]。如果应用程序本身 x86 为目标,则其控件将在设计器中正确处理。...在其他情况下,浏览器内容可能无法正确呈现,例如: DotNetBrowser 不同的方式支持高 DPI。

    54020

    JDBC链接数据库

    确定内容是否符合Java应用程序使用的通信子协议正确的数据库驱动程序的连接请求。识别JDBC在一定子协议的第一个驱动器将被用来建立数据库连接。 Driver 此接口处理与数据库服务器通信。...ResultSet 这些对象保存数据库后,执行使用Statement对象的SQL查询中检索数据。它作为一个迭代器,可以通过移动它来检索下一个数据。...JDBC 使用步骤 使用JDBC应用程序创建新数据库需要以下步骤: 导入包 需要包含数据库编程所需的JDBC类的包。项目中需要添加数据库连接的jar包才能进行导入。...JDBC 连接数据库 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,在给定模式中创建数据库。...e.printStackTrace(); System.out.println("JDBC 插入失败"); } } } 同样的,可以将增删改查都改成这种方式

    1.7K30

    【改进和增强Microsoft Office应用程序】ExtendOffice软件产品介绍

    早在2004年,该公司的创始人就启动了Addintools.com来销售Microsoft Office的加载。...通过创建了简单但功能强大的加载改进和增强Microsoft Office应用程序,让众多ExtendOffice的顾客摆脱大多数Office用户每天必须执行的耗时操作!...05、有用的上下文菜单右键单击标签或标签栏访问标签/标签栏上下文菜单。 Office选项卡还结合了Microsoft Office中的一些常用命令,使您可以更快地访问这些。...无疑,此功能强大且用户友好的加载将为Excel用户节省大量工作时间,并大大提高工作效率。...自动转发 功能在创建规则时提供“与”和“或”关系,而 Outlook 不支持“与”关系。

    11.2K20

    配置:多样化的配置源

    FileConfigurationSource对象提供的IFileProvider对象对配置文件实施监控,并通过注册回调的方式在配置文件更新的时候调用Load方法重新加载配置。...bool optional, bool reloadOnChange); } 当使用JSON文件来定义配置的时候,我们会发现不论对于何种数据结构(复杂对象、集合、数组和字典),我们都能通过JSON格式一种简单而自然的方式来定义它们...但是这样的定义方式语义的角度来讲是不合理的,因为同一个集合的所有元素就应该是“同质”的,同质的XML元素采用不同的名称有点说不过去。...总的来说,INI文件单纯的“{Key}={Value}”的形式定义配置,{Value}可以定义在可选的双引号中(如果值的前后包括空白字符,必须使用双引号,否则会被忽略)。...[Section] key1=value1 key2 = " value2 " ; comment # comment / comment 除了“{Key}={Value}”的形式定义的原子配置外,

    77340

    Windows密码获取和破解(初探)

    Windows密码获取和破解 本文只是简单的讲明密码获取和破解 具体的操作细节均以模糊或具体代码混淆等方式避开 如有兴趣请自行研究,本文不做细说~~~ 获取思路: Windows密码一般是以“...hklm\system system.hive reg save hklm\security security.hive 命令执行后将会将文件保存在本地~ PowerShell获取: PowerShell加载...或直接溢出获取反弹shell,在MSF下执行hashdump即可~ 其它小工具 下列小工具在Windows平台运行就会获得相关的用户凭证…… mailpv:获取mail密码 mspass:获取MSN密码 pst_password...:获取Outlook密码 IE PV:获取IE浏览器缓存密码 各类浏览器密码获取工具 passwordfox:获取Firefox浏览器凭证 chromepass:获取谷歌浏览器凭证 无线网络密码获取工具...username -m 1000 表示破解密码类型为NTLM -a 0 表示采用字典破解 -o [feilname].txt 表示将破解后的文件输出到指定的文件中 --remove win.hash 表示win.hash

    2.3K10
    领券