RussSpitler

I am working on making an installer for a new package I have created and everything seems to be working great except for one issue. When I install the package on a machine other than my developer box the icons for my commandbar buttons do not show up. There is an empty space where the icon should be and the action and tooltip displays properly, just no image. What is strange is that I use the same image for my tool windows and it does show up in the tabs for those panes. Again the package works (and the icons show up) on my machine (even after I reset the Exp hive) but it seems to be having issues when I am installing elsewhere¡­ Do you have any suggestions on how I can debug this issue


Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Sean Price

I can't help you with that, but I'm also working on creating a installer for my package. I have not gotten mine to work at all.

Where did you install your package to Is there a default location that the package needs to be installed to I've created a regfile using the regpkg.exe, but I'm not sure how to integrate it into the installer except typing it into the registry section by hand.

I'm finding the SDK documentation and the samples spectacularly unhelpful in this area.





Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Dmitry Pavlov

Hi guys,

Have a look at alternative way of setup creation - WiX toolset! There is a post with some links inside.

Maybe that helps.






Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Sean Price

Thanks for the tip on that, but it does not help me to know WHERE the files need to be installed to. Can anyone help on that



Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Dmitry Pavlov

Ok. Lets investigate it!

After you provide the information WHAT files do you have to install, I will try to help you with WHERE these files need to be installed.






Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Sean Price

Ah yes. Giving more detail would be helpful, wouldn't it. My bad.

I have created a standard Tool WIndow package. No extra files other than the project output. My bin folder contains my <projectName>.dll and one dependency dll. The Setup project I created in adds in the standard Microsoft.VisualStudio.<xxxx>.dlls.

I have obtained a PLK and set the necessary switches (including the /noVsip). This loads and runs fine on my dev machine from within Visual Studio. Package Load Analyzer reports success for the key. This would be from within the Expermential Hive though.

So now I want to create an install package to load this onto another machine. Now, I am familar with the setup and deploy project. I find it a bit unintuitive, but hey..it's out of the box free so I can't complain. ;-)

I know that certain Add-Ins need to be installed in the Shared/add-ins folder for VS to find them, while other types of projects (exes for example) can be located anywhere on the filesystem.

For a VS tool window package, I don't know if the files (output dlls), need to be located within a specific folder for VS to find them when it loads. I tried installing them to a standard [User]/[ProgramFiles][ProjName] folder, but VS will not load the package. The Package Load Analyzer gives me a PLK verification error. (The registry keys were created using the regpk registry tool.)

So I could have other issues related to the PLK also, but I need to take this one step at a time. And my first step is to find out if a Tool Window package dll needs to reside in a specific folder within the Visual Studio Folder structure.

Thanks,

-- Sean





Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

gimmecat

Did you change the path of your .dll files in the registry part of your setup The corresponding keys should be in HKLM\Software\Microsoft\VisualStudio\8.0\Package\GUIDofyourpackage

You must update these keys, because regpkg.exe has set their values when your dll files were still in the debug directory of your project.

Hopefully this will help you




Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Dmitry Pavlov

Hey Sean,

Let us know did gimmecat's advice help






Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

Sean Price

Yes. That pretty much answered my question. The dlls can reside pretty much anywhere as long as the appropriate registry key points to them correctly. So thanks for helping on that.

Of course, I still can't get my package to load outside of the ExHive. I just get the famous PLK failure. Which is interesting, because it runs inside my project just fine using the PLK generated off the site and using the /noVSIP switch. But for some reason, I get failures anywhere else. I've read all the posts on PLK failures and read the Dr. Ex blog post, but nothing seems to work.

<rant>

I'm not sure why MS went with this whole "hash key" method for package loading. I can see the reasoning behind wanting a unique (guid, version, company) key, but not building the generator into the SDK is absurd. You can't delete a product from the MS site, so if you make a mistake and want to request a new key, you have to create a whole new product, which just leads to errors in your project, as you have to change versions, names, etc.. This just leads to compounding errors. The other problem I have is that it takes 3 days to get a key from MS so debugging this just takes forever. I've got over 8 days into trying to get my package to load, and 90% of that is waiting for keys from MS. I have a great little tool window app that I want to release to our internal dev team, but for practical purposes, it's unuseable because of these issues. I'm sure I'll find a way around these issues, but it's frustrating to say the least.

</rant>





Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

RussSpitler

The original question on this thread is still unresolved and only getting more frustrating for me... Does anyone have any suggestions Please .... I am getting really near my deadlines.

again:

When I install and run devenv /setup my package seems to be registered properly. Except my command is missing its image, on the toolbar there is an empty spot for the icon. The action performs and the tooltip shows up correctly, it is just blank. I have found that on any machine I am able to get the icon to appear when I am using the experimental hive, just not in a real deployment. I am not sure what steps I can take to debug this issue. One other weird thing is that I am using the same bmp as the icon for my toolwindows, and on the tabs the bmp shows up properly. I have verified that the PLK is working properly. I suppose one other point of interest is that one time I ran devenv /setup and the GUI appeared during the process ¨C for this brief instant I did see my icon in the toolbar. I am getting really frustrated with this issue and I am not sure what I can do to further debug this. Do you have any suggestions






Re: Visual Studio Extensibility VSPackage Issue installing on a non-dev machine

RussSpitler

I found the answer!

I guess if you would like to use a custom bitmap you need to specify the CodeBase entry when registering the package... This is noticeably missing from the documentation