Componentizing Apps (Winamp project)

Over the Spring of '05, I posted a series of blog posts on the end to end process to componentize 3rd party applications or drivers. I did this because I've seen the same legitimate complaints from folks that the process is too hard or not intuitive. Yeah, it's not intuitive, especially for some folks who just don't understand what an "API" is, don't know what MSDN is and to be honest they may not care.

And then there are our customers that are developers, they code for a living, they 'get it' when you tell them that the dependency is a delay load, they know what you're talking about when you say you can't do that because shell32 is a static dependency. Those are the folks that just need a primer on the end to end componentization process, these articles were for them as well.

As the first article explains, I chose Winamp for this project because it's small enough and manageable enough for you to get your feet wet without feeling overwhelmed. I have used this same *basic* process for hundreds of drivers and applications over the years, here's another app (and much more complicated) that I componentized using this basic process.

Pt 1: The beginning

Pt 2: Capturing the File and Reg resources

Pt 3: Populating the component with resources

Pt 4: Creating Component objects for 'Package' and 'Rep'

Pt 5: Determine Component Dependencies

Pt 6: The end at last

Here is the resulting Winamp Lite component package.

- Andy