VSPackage 在干净计算机上未能通过 PLK 验证,但在设置 /noVSIP 时在开发计算机上通过

发布于 2024-08-28 09:05:41 字数 429 浏览 1 评论 0原文

我认为标题几乎说明了一切。但为了安全起见...

我在我的主机上开发了一个 VSPackage,上面安装了 VS2008 SDK SP1。在实验蜂巢中调试时,一切正常。我获得了 PLK,应用了它,然后按照测试 PLK 的说明进行操作(即在命令行上传入 /noVSIP),并且包正确加载。

我现在已经用 WiX 编写了一个安装程序(因为 regpkg 会输出 WiX XML),并尝试在虚拟机中运行的 Visual Studio 2008 Pro 版本上安装 VSPackage。但我的 PLK 验证失败。注册表中的 4 个重要位(CompanyName、ProductName、ProductVersion、VSVersion)与我生成 PLK 的内容相匹配。没有空格、没有隐藏字符等。这些位也与代码中 PLK 属性上的内容相匹配。

由于 /noVSIP 有效,我不知道如何调试这个加载问题。想法?

I think the title pretty much says everything. But just to be safe...

I've got a VSPackage developed on my main machine that has the VS2008 SDK SP1 installed on it. When debugging in the experimental hive, all works fine. I got a PLK, applied it, and followed the directions for testing the PLK (i.e. pass in /noVSIP on the command line), and the package loads properly.

I've now written an installer with WiX (since regpkg will spit out WiX XML) and trying to install the VSPackage on a Visual Studio 2008 Pro edition running in a VM. But I get PLK verification failures. The 4 important bits (CompanyName, ProductName, ProductVersion, VSVersion) in the registry match what I generated the PLK with. No whitespace, no hidden characters, etc. Those bits also match what's on the PLK attribute in code.

Since /noVSIP works, I'm at a loss for how to debug this loading issue. Thoughts?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里的微风 2024-09-04 09:05:41

“包加载失败”对话框并不一定意味着 PLK 有问题。您的软件包在使用 /noVSIP 的开发计算机上运行这一事实意味着这不是 PLK 问题。

您可以尝试使用SDK中包含的Package Load Analyzer工具来进一步调试。您可以在测试计算机上安装一个 redist,位置为 %VSSDKInstallDir%\VisualStudioIntegration\Tools\Bin\VSSDK_PLA.exe。然后,在测试机上,执行Tools ->包加载分析器并选择您的包。它将尝试强制加载它并提供失败原因的更多信息。

另请查看以下帖子,了解可能导致加载失败的其他想法:

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

A "Package Load Failure" dialog doesn't necessarily mean a problem with the PLK. The fact that your package works on your dev machine with /noVSIP implies that this is not a PLK issue.

You can try using the Package Load Analyzer tool included in the SDK to debug further. There is a redist you can install on a test machine at %VSSDKInstallDir%\VisualStudioIntegration\Tools\Bin\VSSDK_PLA.exe. Then, on the test machine, execute Tools -> Package Load Analyzer and select your package. It will attempt to force-load it and provide more information why it's failing.

Also check out the following post for other ideas on what could be causing the load failure:

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文