上一次我们开发了一个简单的64位COM加载项,虽然功能很简单,但是包括了开发一个64位COM加载项的大部分过程。本次我们来给COM加载项添加一些功能:从SharePoint 2010的文档库中下载一个Excel文档到本地。 本系列所有示例代码均在 Visual Studio 2010 Ultimate RC + Office 2010 Professional Plus Beta x64 上测试通过。
1、首先创建一个Shared AddIn项目(具体细节请参阅上一篇文章):
2、添加引用: Microsoft.SharePoint System.Windows.Forms System.Drawing System.DirectoryServices
3、在Connect类中创建Application和COMAddIn的实例:
代码
3、在OnConnection事件里初始化:
代码
4、在OnStartupComplete事件中设置一个按钮,关联事件处理逻辑: 5、做一个域用户验证,当用户输入了合法的与用户名和密码后,才允许下载。这里添加了一个WindowsForm到项目中:
6、域用户验证逻辑,我本机是一台域控制器BROOKS.COM,使用的静态IP: 192.168.1.100,【LDAP://192.168.1.100/DC=BROOKS,DC=com】是LDAP的路径语法: 代码
7、使用Windows Server 2008 R2的AD管理器创建一个域用户:test
8、在Connect中编写下载文件逻辑: SharePoint 2010 网站是:http://brookspc/sites/doc,我们要下载的就是其Document库中的Excel Services Test.xlsx。 代码
9、按钮事件处理逻辑: 代码
10、编译一下,安装生成的setup.exe:
11、打开Excel,点击【下载数据】:
12、输入域用户名、密码后,点击【登录】,即把SharePoint中的文件下载到了本地,默认在C盘:
小结: 本次只是添加了一些功能,和SharePoint 2010进行了交互,下载了一个文档,其中用到了域用户的验证。后续篇章会继续将VSTO与其他技术进行整合,构建一个完善的解决方案。 |
|