VSPackage fails PLK verification on clean machine, but passes on Dev machine when /noVSIP is set

188 views Asked by At

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?

1

There are 1 answers

1
Aaron Marten On BEST ANSWER

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