While we're on the subject of setup projects being lame, if you want to localize your installer, you need create a new project for every culture you want to localize into - for this reason alone, we decided to go with Wix Andrew -----Original Message----- From: Discussion of advanced .NET topics. [mailto:[EMAIL PROTECTED] On Behalf Of Wilson, Phil D Sent: Friday, December 02, 2005 3:10 PM To: [email protected] Subject: Re: [ADVANCED-DOTNET] Reading registry key and writing it into propety during installation
It *is* pretty basic to want to do something before files are copied, and people do it all the time, but VS setup projects have never exposed all the functionality of Windows Installer and MSI files. There are a whole bunch of tools to create MSI files these days, some expensive, some free (like Wix) but VS setup projects are pretty much at the low end of the capability spectrum. There all kinds of custom actions: programs, scripts, C++ Dll function calls. The VS folks decided to invent managed custom actions to let people call Installer classes as custom actions, and that's done by having the MSI call a standard C++ Dll custom action in a shim Dll, InstallUtilLib.dll, that then locates your assembly and uses reflection to locate and instantiate your Installer class and its methods. If you can code a straight C++ Dll function, that's much more straightforward and more functional than an Installer class custom action (but you still can't sequence it at the start of the installation in a VS setup project). Phil Wilson -----Original Message----- From: Discussion of advanced .NET topics. [mailto:[EMAIL PROTECTED] On Behalf Of Peter Ritchie Sent: Friday, December 02, 2005 11:10 AM To: [email protected] Subject: Re: [ADVANCED-DOTNET] Reading registry key and writing it into propety during installation I haven't used them personally; but, does anyone know if an "installer class" has the same limitation as a "custom action". Or, is a "custom action" implemented as an "installer class"? Seems pretty basic to be able to do something before files are copied during deployment. On Fri, 2 Dec 2005 17:59:45 +0100, =?ISO-8859-2?Q?Stanislav_Pe=BBko?= <[EMAIL PROTECTED]> wrote: >This does not solve my problem, because custom actions can be run after >the installation. I need this before the real installation. When the >setup wizard runs, the second or third form is about the directory, >where program will be installed. I need to read value from registry and >set the property before this form is displayed, to have directory >predefined. > >It really seems, this can't be done using VS2003, but I need to use >some 3rd party installer tool. > > >Ok, thanks for the ideas anyway, > >Stano. > > > >Peter Ritchie wrote: > >>See "Walkthrough: Creating a Custom Action" in the "Deploying with >>Visual Studio.NET" help. (online at http://msdn.microsoft.com/library/default.asp? >>url=/library/en-us/vsintro7/html/vxwlkwalkthroughcreatingcustomaction. >>asp or tinyurl-ized: http://tinyurl.com/eyvbs) It's an example in >>Visual Basic; but using C# instead would be trivial. >> >>http://www.peterRitchie.com/ >> >>On Fri, 2 Dec 2005 15:25:56 +0100, =?ISO-8859-2?Q?Stanislav_Pe=BBko?= >><[EMAIL PROTECTED]> wrote: >> >> >> >>>Do you have link to some resources about this? >>> >>>Stano >>> >>> >>>Baris Acar wrote: >>> >>> >>> >>>>Well, >>>>As far as I remember you can plug some of your routines in your >>>>setup project, thus reach any framework class including Registry. >>>> >>>>baris >>>> >>>> >>>> >> >>=================================== >>This list is hosted by DevelopMentor(r) http://www.develop.com >> >>View archives and manage your subscription(s) at http://discuss.develop.com >> >> >> >> > >=================================== >This list is hosted by DevelopMentor(r) http://www.develop.com > >View archives and manage your subscription(s) at http://discuss.develop.com =================================== This list is hosted by DevelopMentor(r) http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com =================================== This list is hosted by DevelopMentor(r) http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com =================================== This list is hosted by DevelopMentor® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com
