1

We are using a Cab Builder project in VS2008 to generate our CF cab files. This works well until we make changes that affect the dependencies. The Cab Builder project decides we need all sorts of additional libraries (mscorlib, etc.) that we don't need to actually deploy in our cab. We select the libraries and explicitly exclude them and commit the changes to svn -- when the build server gets the latest of the project and builds it the rogue libraries are back. We have to actually open the cab project on the build server and (again) manually exclude the libraries we don't want to include.

  1. Is this normal behavior for the cab builder?

  2. Is there a work around?

  3. Will we have less pain if we give up and generate our .inf files with a different method and run the exe on the build server to generate the cabs instead of using the project?

Thank you

Steve
  • 1,605
  • 1
  • 18
  • 29

1 Answers1

1

Ah, the CAB deployment project. I swear that thing was an afterthought and tasked out to a couple interns to develop. It's absolute garbage for anything but the most simplistic packaging scenarios.

What we do is we hand roll the INF and then call cabwiz manually. I've done this with the aid of MSBUILD to make automation pretty simple.

ctacke
  • 66,480
  • 18
  • 94
  • 155
  • The answer I was expecting but hoping not to hear... We're going to take the same path. We're thinking of using a developer-friendly xml file to define the files to include which we'll then have a custom tool use to generate the lovely-in-a-dos-sort-of-way inf file. The build will then call cabwiz to process that inf. Any thoughts on this approach? – Steve Feb 25 '11 at 21:18
  • We've got a tool somewhere in the office that we use that generates an INF based on a PC directory tree. So basically you put your files in a PC directory structure as you want them to end up on the device and run the tool and it spits out an INF that will achieve it. We then do some minor manual changes for things like title, etc and push that into TFS. – ctacke Feb 25 '11 at 21:43