如何:使用 Windows SharePoint Services 解决方案部署 UDF
此示例演示如何通过使用 Windows SharePoint Services解决方案框架来部署用户定义函数 (UDF) DLL。
Windows SharePoint Services 解决方案框架可让您将用于扩展 Windows SharePoint Services 的所有组件捆绑在一个称为解决方案文件的新文件中,此文件带有 .wsp 扩展名,而且其格式基于 CAB。解决方案是一个可部署、可重复使用的包,可包含一组功能、网站定义和程序集,您可以将它们应用于网站并单独地启用或禁用。此外,您可以使用解决方案文件来部署 Web 部件包的内容,包括程序集、类资源, .dwp 文件和其他包组件。有关 Windows SharePoint Services 解决方案框架的详细信息,请参阅 Windows SharePoint Services 3.0解决方案和 Web 部件包(网址为:https://msdn2.microsoft.com/zh-cn/library/ms413687.aspx,)。
通过使用 Windows SharePoint Services解决方案框架来创建和部署 UDF 程序集的过程如下:
创建解决方案清单文件 Manifest.xml。
解决方案清单(通常称为 Manifest.xml)存储在解决方案文件的根部。该文件定义要处理的功能、网站定义、资源文件、Web 部件文件和程序集的列表。它未定义文件结构;如果在解决方案中包括文件但未在清单 XML 文件中列出这些文件,则不会以任何方式处理这些文件。
备注
有关清单 XML 文件结构的详细信息,请参阅 Windows SharePoint Services 3.0 文档。
将 UDF 程序集和 Manifest.xml 打包为一个 CAB 文件。
确保 Windows SharePoint Services 管理服务在服务器上运行。
通过使用 stsadm.exe 将解决方案添加到服务器。
通过使用 stsadm.exe 部署解决方案。
共享服务提供程序 (SSP) 中的每个 Excel Services 受信任位置都有一个 AllowUdfs 标志。
备注
AllowUdfs 标志是由“Excel Services 受信任文件位置”页上的“允许的用户定义函数”选项表示的。
为了允许从特定的受信任位置调用 UDF,您必须:
将 AllowUdfs 值设置为 true。默认值为 false。
将 UDF 程序集添加到受信任的 UDF 列表,以允许从工作簿中调用 UDF。
有关如何启用 UDF 和将 UDF 添加到受信任的 UDF 列表的详细信息,请参阅如何:启用 UDF。
备注
为避免名称冲突,请为 UDF 程序集和它们的依赖项指定强名称,而且名称要尽可能唯一。有关详细信息,请参阅 Excel Services 最佳做法和 Excel Services 的已知问题和提示。
过程
创建 Manifest.xml 文件
在“解决方案资源管理器”中右键单击您的项目,指向“添加”,再单击“新建项”。
选择“XML 文件”,将文件命名为 Manifest.xml。
单击“添加”。
将以下内容添加到文件中:
<?xml version="1.0" encoding="utf-8" ?> <Solution xmlns="https://schemas.microsoft.com/sharepoint/" SolutionId="{57568687-2CC0-45bf-B66A-2D50D57108CA}" DeploymentServerType="ApplicationServer"> <Assemblies> <Assembly DeploymentTarget="GlobalAssemblyCache" Location="EcsUdfsCommonSet.dll"/> </Assemblies> </Solution>
备注
应为每个解决方案生成一个唯一的 GUID。有关 Solution 元素的详细信息,请参阅 Windows SharePoint Services 3.0解决方案和 Web 部件包(网址为:https://msdn2.microsoft.com/zh-cn/library/ms413687.aspx,)。
创建解决方案包
- 有关如何创建解决方案文件的信息,请参阅 Windows SharePoint Services 3.0 SDK 中的“Solutions and Web Part Packages”(解决方案和 Web 部件包)节点下的“Creating a Solution”(创建解决方案)主题。
验证 Windows SharePoint Services 管理服务是否运行
单击“开始”,指向“管理工具”,再双击“服务”。
出现“服务”对话框。
确保“Windows SharePoint Services 管理”服务的状态显示为“已启动”。如果不是,请右键单击“Windows SharePoint Services 管理”,再选择“启动”。
添加解决方案
依次单击“开始”、“运行”,再键入 cmd。
出现命令提示符控制台。
运行以下脚本以将解决方案添加到 SharePoint 服务器:
stsadm.exe -o addsolution -filename <CAB 的路径>
备注
可以在以下路径找到 Stsadm.exe:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN。
备注
有关 Stsadm.exe 命令选项的详细信息,请参阅 IT 和管理员文档及指南(该链接可能指向英文页面)(网址为:http://technet2.microsoft.com/?zh-cn/library/affb91f8-d145-4964-8fc4-2515aa0c1e7b,)。
部署解决方案
依次单击“开始”、“运行”,再键入 cmd。
出现命令提示符控制台。
运行以下脚本以将解决方案部署到 SharePoint 服务器。
stsadm.exe -o deploysolution -name <CAB 的文件名> -immediate -allowGacDeployment
现在应该在全局程序集缓存中看到您的 UDF DLL。