To amplify Phil's "How hard can it be?" -- I've been a Windows developer since 1992 (C++ since 94) and have written just about every kind of Win32 code imaginable, including device drivers and VxDs. By far the most difficult aspect of Windows development, IMHO, is creating & maintaining MSIs -- the environment is quite limiting, and I find myself spending more time dealing with these limitations than on anything else. I've found myself writing many custom actions over the years, all in C++ or straight C.
Note that I'm not using WiX just yet -- I'm still using Wise but hope to change over in the near future, as soon as I get some time to make it happen. Of course, I've been saying that for over a year now... "Wilson, Phil" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] >I understand, and it wasn't meant as a criticism. It just seems to be a > common story that some developer on the team with some set of skills > will be pressed into service as the setup guy with a different skill set > requirement. Occasionally people are surprised by that difference. Setup > is just copying files, right??? How hard can it be? But you > volunteered, so good, and welcome to the setup club. You'll probably run > into other areas where setups require a different way of thinking. (One > model is that you should write setups as if you're updating the > company's payroll database with no backup to correct it if you fnd out > you did it wrong when it's all over.) Also, C++ will always be useful, > so if you're just starting out I'd certainly recommend you learning it > (include managed C++ too) because you'll stand out from all those guys > who only have C#. > > Phil Wilson > > > ________________________________ > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Dhaval > Patel > Sent: Monday, March 19, 2007 4:20 PM > To: Levi Wilson > Cc: Danish Waheed; wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] C# .dll > > > Phil: My PM and all the senior engineers who interviewed me, hired me on > the basis of my C# skills. I was the one who started packaging my > company's deployment packages using WIX - all (and I mean ALL) the folks > in my company still use XCopy and batch files. I raised this issue > (calling C# .dlls from WIX) because it is something that seems eminent > and invigorating. I like learning newer technologies and I ended up > learning WIX myself, not because my superiors 'forced it upon me' (they > are least interested in such issues anyway :)) or because it was a core > requirement. I just like my packages to be deployed in an 'orderly' > manner and what better than WIX to do such things!! > > That being said, I am not complaining that WIX doesn't support .NET > .dlls - I am merely raising an issue that will be raised by others as > more people start adopting WIX. I have coded in ANSI C (in college, not > exaggerating) for a semester, because I was forced to. Personally I felt > it was horrible, but then I also believed that I couldn't be a > programmer unless I started from the ground up. Of course I could learn > C++, and who knows someday I will, but at this point in time I see > myself as a hardcore C# enthusiast (of course a newbie as far as my > programming skills go!). > > Anyway, I just wanted to find out the reasons why this can't happen (at > least for now), and I think Richard made some good points. I completely > overlooked the issue of 'undoing' a custom action, but I was thinking > more on the lines of 'if it is doable in C++, it must be a breeze to > redo it in C#'. > > Thanks for all the replies (the issue surely raised a few eyebrows.. > hehe). > > > > On 3/19/07, Levi Wilson < [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > wrote: > > And C++ will NEVER die. > > > > On 3/19/07, Danish Waheed <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > wrote: > > I think one of the reasons why Windows Installer does > not have lots of fancy > actions is because they are not generally related to > installation and hence > the support for Custom Actions. You cannot include all > the possible actions > as there are so many types of software and so many > configuration/changes > required, that it is better to leave them to the > developer to write custom > actions for their needs. > > Now for .NET Custom Actions, I think it will be cool to > have support for > that, but at the same time, I think vbScript and Jscript > are very easy to > use and learn compared to C++, in case someone does not > want to spend time > on C++. Besides, if you know Object Oriented > Programming, like C#, learning > C++ is not that difficult especially if it is just for > Custom Actions. It > may take a bit extra time for you to write a DLL in the > beginning, but once > it is done, adding more functions to it is very easy. > There are so many > tutorials out there that you can learn from. > > I am not a C++ programmer by any means and most of my > coding has been in C# > and Java so I understand where Dhaval is coming from. > But I had to write > custom actions in C++ as it was not an option at several > places I worked at. > So if you like being a setup developer for Windows, > learning C++ will > definitely help you in the longer run. > > Now one must avoid using Custom Actions unless it is > really required and is > something that Windows Installer cannot do. But can you > avoid it or not > depends on the software you are writing setup for, I > have seen a lot of > products with more than 50 Custom Actions and all of > them doing something > that Windows Installer cannot do. Once you start > working on complex > software setup, things get messy very easily and the > best way to handle > those Custom Actions is to write Custom Action dll in > C++. > > Just my two cents. > > Thanks > > Danish Waheed > > > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto: [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> ] On Behalf Of > [EMAIL PROTECTED] > Sent: Monday, March 19, 2007 11:44 AM > To: wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] C# .dll > > One other concern in making custom actions in C# (or > anything else) is > that as Rob regularly observes, custom actions are very > difficult to get > right - especially when considering installation failure > (rollback) and > appropriate uninstall operation. Speaking for myself, I > try to avoid > them whenever possible. In fact I think the only custom > actions I > currently have in any of the installations I have > generated relate to > the verification at installation time of a customer > entered license key. > > Many people seem to look at custom actions as a way to > do things that > aren't supported by Microsoft Installer itself. While > true, it is also > often true that there is a reason why Microsoft > Installer doesn't > currently contain built-in support for that specific > action. > > Regards, > Richard > > --- Original message follows --- > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On > Behalf Of Dhaval > Patel > Sent: Monday, March 19, 2007 10:45 AM > To: Rob Mensching > Cc: Joe Kaplan; wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] C# .dll > > > "Folks like me," meaning people who have minuscule > experience > programming in VBScript or C++. I pretty much started > learning to > program in C# back in 2002, graduated last year, and am > currently > working as a C#/ASP.NET developer. Of course I could > embark on a journey > to learn C++, but I think the rest of the world is > moving to .NET, > especially with the advent of C# 3.0 (LINQ), CLR 3.5, > etc. I rather > spend time on exploring new features of C# 3.0 and CLR > 3.5. > > I am still a WIX newbie by any means - I hope I didn't > offend you by > saying 'people like me' :) In essence what I was trying > to say is that > folks who excel in C# will be able to exploit WIX's > features to a > greater extent. Plus I think if this happens, many > developers will start > adopting WIX right away. I still have a few colleagues > who don't want to > use just because they can't pass values read from a WIX > User dialog to a > C# .dll. One (hypothetical) example most people would > put this > functionality to use is writing their own custom SQL > connection strings > using the SqlConnectionStringBuilder. > > > --- Remainder of message history trimmed --- > > > > * C O N F I D E N T I A L I T Y N O T I C E * > > ----------------------------------------------------------- > The content of this e-mail is intended solely for the > use of the individual > or entity to whom it is addressed. If you have received > this communication > in error, be aware that forwarding it, copying it, or in > any way disclosing > its content to any other person, is strictly prohibited. > Peek Traffic > Corporation is neither liable for the contents, nor for > the proper, complete > and timely transmission of (the information contained > in) this > communication. If you have received this communication > in error, please > notify the author by replying to this e-mail immediately > and delete the > material from any computer. > > > > > ------------------------------------------------------------------------ > - > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the > chance to share your > opinions on IT & business topics through brief > surveys-and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE > V > <http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVD > EV> > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > <https://lists.sourceforge.net/lists/listinfo/wix-users> > > > > ------------------------------------------------------------------------ > - > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the > chance to share your > opinions on IT & business topics through brief > surveys-and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE > V > <http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVD > EV> > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > ------------------------------------------------------------------------ > - > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance > to share your > opinions on IT & business topics through brief surveys-and earn > cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE > V > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > <https://lists.sourceforge.net/lists/listinfo/wix-users> > > > > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys-and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users