Hi guys,
I've got a quick question about installers in .NET. Any advice would be
gratefully received!
I'm writing a .NET Windows application that needs an installer. I'd
really like the set up files to comprise of a SetUp.exe file, an MSI
and a CAB file containing all the files (exes, dlls, etc...) for my
application. Then, when the SetUp (or MSI) is launched, the installer
unpacks what is in the CAB file and deploys it to the install location.
One reason I want to do this is that I want my application to be able
to manually access the CAB file, unpack it, and use the files
elsewhere. Historically, I used to do this by putting an installer and
a separate zip file containing my application files on my release
disks. Then, the installer would take care of itself, and the zip file
was always available to the code when it was needed. (I have libraries
to unpack zip files, so there were no format barriers either!) The draw
back of this is that files are duplicated on the disk.
I thought this would be easy to achieve, but this is not the case! If I
build a CAB file using the set up wizard, the files within the CAB file
are not the proper application files; they all have weird names, like
"_9B36C0E000CC39B66CCCE90158340CB7". If I build a separate CAB file
using the Cab Project, the files within the CAB file are as expected,
but when I include the CAB file in an installer, the CAB file is just
placed in the output directory as a CAB file, and not unpacked!
Am I missing something here? Is it possible to do what I want to do?
Many thanks,
Steve.