2010-04-13 68 views
1

我们发现Web服务软件工厂中的一个错误,可以找到一个描述here。它没有更新,所以我们决定下载代码并自行修复。非常简单的bug,我们用3行代码修补它。但是,我们现在试图重新包装并使用它,并发现这似乎是一个不可能的过程。PLKs和Web服务软件工厂

有人可以向我解释PLKs的过程吗?我已阅读了所有关于它们的内容,但仍不明白分发VS软件包的真正需求。

我能够使用从here获得的PLK加载并运行它,但我假设您必须是partner才能获得可在其他人系统上识别的功能PLK?

每次我尝试并在不同的计算机上安装时,都会收到“程序包加载失败”。我是因为没有使用合作伙伴密钥而得到错误的原因?有没有其他解决方法?例如,有什么方法可以让我们分发一个“内部”VS包?

编辑 文件我不得不改变它的工作。

  • 首先运行devenv的PostInstall.proj
  • 生成您plks并更换##包PLK ##(.resx文件) --just注意包的版本是不是类名称,但“Web服务软件工厂:建模版” - 你需要从关键
  • ProductDefinitionRegistryFragment.wxi线1252(到任何版本你在保良局使用更新版本)
  • 取消注释所有// [VSShell :: ProvideLoadKey删除新线(“Standard”,常量在.tt文件中

回答

1

简短答案是否定的,您不需要成为在Microsoft注册以获取和使用PLK的VSIP合作伙伴。您从该网站获得的PLK应该适用于任何VS安装。 (与此相关的,微软已经取消了PLK的完全对VS 2010的要求)

以下页面应与调试帮助是什么问题:

http://msdn.microsoft.com/en-us/library/bb164677.aspx

http://blogs.msdn.com/dr._ex/archive/2006/12/14/debugging-package-load-failures.aspx

有也是Visual Studio 2008 SDK中的一个名为Package Load Analyzer的工具,它可以帮助您调试加载失败(并确认它实际上是PLK问题,而不是其他)。复制并运行VSSDK_PLA.exe(位于VS SDK安装位置下的VisualStudioIntegration \ Tools \ Bin下)到您的测试机器上,以安装Package Load Analyzer工具。

+0

谢谢你,你不需要成为一个VSIP合作伙伴的保证。我会再试一次,我不明白它如何在开发机器上工作,但不是其他人。我会再次走过所有的步骤,看看我是否错过了一些东西。 – Nix 2010-04-13 15:47:45

+1

如果您安装了Visual Studio SDK,则不会为任何软件包强制执行PLK检查。这就是为什么人们经常看到一个包在他们的开发机器上正确加载而不是测试机器的原因。 – 2010-04-13 17:17:03

+0

PLK的过程是不必要的痛苦。我实际上再次测试。 – Nix 2010-04-13 17:34:12

0

重建Web服务软件工厂时,您不必担心软件包加载密钥,因为它是一个指导软件包,它依赖于只有PLK所需的GAX。要制作指导包,如服务工厂,您还需要安装GAT。

Service Factory源应包含您需要构建和重新部署的安装项目。如果您遇到问题,团队成员会监控其社区网站(http://servicefactory.codeplex.com)上的讨论论坛。响应非常好。

亚伦是对的,整个故事在VS2010中变得更容易。 VSIX很漂亮。我们正在将服务工厂更新到VS2010。它应该在一个月内准备好发布。

唐 MS P & p

+0

有趣的你说,3月9日http://servicefactory.codeplex.com/Thread/View.aspx?ThreadId=204308 – Nix 2010-04-13 18:44:18