【问题标题】:Make changes in wsp file programmatically以编程方式更改 wsp 文件
【发布时间】:2011-09-06 18:39:26
【问题描述】:

我目前需要的是以编程方式对现有 wsp 文件进行某些更改。最有可能的 wsp 文件将使用“将网站另存为模板”SharePoint 操作创建 - 我需要对其进行更新。

您会推荐什么 api/方法来完成这项任务?请注意,.NET C# 是强制性的。我现在可以看到的一些方法/问题:

  1. 你们知道一些允许“友好”对象模型处理 WSP 文件的第三方工具吗?我找不到。
  2. 您知道在 WSPBuilder 或 Visual Studio 2010 中是否有任何特殊的程序集可用于此目的?
  3. 您会推荐哪种 CAB 工具?因为似乎没有太多 .NET 解决方案可用于处理 CAB 文件。

【问题讨论】:

  • 你试过VS2010中的WSP导入项目吗?
  • 是的 - 我知道这种技术。但不幸的是,我只需要编程方法 - 普通用户将调用该操作。该操作将与标准的“将站点另存为模板”操作几乎一样工作,但生成的 wsp 应该有一些更改(添加/删除功能、资源文件,可能还有其他一些)。
  • Mauro:顺便问一下,你知道我可以用来完成这项任务的 Visual Studio 程序集和 API 吗?
  • 不幸的是,我不知道这两个 cmets 的答案。我建议尽管这可能不适用于所有情况,例如,如果网站是发布网站,则不能将其另存为模板。

标签: sharepoint-2010 wsp


【解决方案1】:

您可以使用 cablib.dll 。它与 WSP BUilder 使用的 API 库相同。

请注意,不建议以编程方式进行此类更改,并且通过部署它可能会使您的服务器进入不受支持的模式。

http://www.codeproject.com/KB/files/CABCompressExtract.aspx

【讨论】:

  • 谢谢!您能否提供更多详细信息,为什么不推荐它以及“可能将服务器置于不受支持的模式”。基本上我需要的是从网站模板中删除某些功能(在“将网站另存为模板”操作之后)并向该网站模板添加一些自定义功能,更新资源。
  • 因为基本上你在篡改sharepoint生成的.wsp文件,不支持
  • 现在不能同意这一点。我可以将此 wsp 包导入 Visual Studio 执行必要的更改并再次制作 wsp - 这是受支持和推荐的方法之一。在我的情况下,唯一不同的是我无法在 Visual Studio 中手动执行更改,但需要自动/以编程方式执行它们 - 因为像“创建/更改 WSP”这样的操作将由 SharePoint UI 中的普通用户执行。跨度>
  • 另外,除了 cablib.dll - 有没有人有关于 CabDotNet 工具的经验/建议 - mischel.com/pubs/cabdotnet
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-14
  • 1970-01-01
  • 1970-01-01
  • 2018-10-18
  • 1970-01-01
  • 2010-12-04
  • 1970-01-01
相关资源
最近更新 更多