views:

29

answers:

1

I've created an Installer project (via the Installer Wizard project) in Visual Studio 2008. Its easy to install EXE's and DLL's with, but I've got a more complicated deployment process.

There's a FireFox extension (.xpi) that I want to deploy. I would like to include it as an output of another project, rather than copy it into the Installer project (which screws with source control, for one; but mostly because its an obvious hack). Additionally, there is some configuration information that the extension needs access to (install directory is a good example) that must be provided at install time.

Having described the situation, what I think I need is some way to include files relative to the output of another project; and a way to specify a custom install step. I don't care what the custom step takes the form of, though C# is preferable, I'll hack away in C++ or BAT scripts if need be.

However, any way to accomplish what I've outlined above will do.

A: 

For future browsers...

There doesn't seem to be a nice way to copy non-standard output using the installer project. I fixed this by making a copy of my custom build events from the Extension project into the Installer project.

Post build events can be thrown onto an Installer project, but they're isn't a "normal" property page for the Installer project type. Its still an option in the properties window though.

There is a custom install task window, accessible by right clicking the project and going to the view menu. It behaves similarly to the FileSystem and Registry windows. You can throw EXEs and DLLs into it, which I haven't played with yet; in theory you should be able to do anything. Debugging is reported to be tricky, however.

Kevin Montrose