You can create a simple "proxy" DLL which: - will be compatible with WiX - will redirect the custom action call to a standard DLL.
-----Original Message----- Date: Sun, 07 Sep 2008 13:32:44 -0700 From: Bob Arnson <[EMAIL PROTECTED]> Subject: Re: [WiX-users] Calling functions in standard dlls To: "General discussion for Windows Installer XML toolset." <wix-users@lists.sourceforge.net> Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Sean Farrow wrote: > Is there a custom action with in windows installer to call a function > within a standard win32 dll? > No, that's not supported by MSI or supplemented by WiX. -- sig://boB http://joyofsetup.com/ ------------------------------ Message: 3 Date: Mon, 08 Sep 2008 10:44:33 +1200 From: Ewart MacLucas <[EMAIL PROTECTED]> Subject: Re: [WiX-users] launch webpage on uninstall To: "'General discussion for Windows Installer XML toolset.'" <wix-users@lists.sourceforge.net> Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=us-ascii Palbinder - thanks very much for that feedback, sounds like Wix 3.0 is perhaps the way to go. I was a little concerned about using a 'beta' labelled open source solution for a commercial product but it sounds like it's perhaps stable enough to deploy on a large scale. regards ewart -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Pally Sandher Sent: Monday, 1 September 2008 11:18 p.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] launch webpage on uninstall WiX 3.0 does have 2-3 lines of code to implement this. WiX 2.0 doesn't. In WiX 3.0 I would do it thus: <UI> <Publish Dialog="ExitDialog" Control="Finish" Event="DoAction" Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 AND (Installed AND NOT REINSTALL)</Publish> </UI> <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch My Uninstall Web Page" /> <Property Id="WixShellExecTarget" Value="http://www.iesve.com/" /> <CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" /> Which would add a checkbox on the ExitDialog when Uninstalling allowing the user to choose whether to see your web page or not. If you wanted to be more draconian you could force the website to show up always on Uninstall & remove the code to show the checkbox by removing the first Property tag & modifying the inner text of the Publish tag accordingly. This is all thanks to the ShellExecute CustomAction which is part of the WiXUtilExtension.dll in WiX 3.0. In WiX 2.0 you would need to write your own CustomAction to do this. Or alternatively use one someone else has written for you -> http://blogs.msdn.com/noahc/archive/2007/05/09/shellexec-a-tiny-tool.asp x You could add that application in a Binary tag so that it's embedded inside your MSI & call it in a Type 17 CustomAction on the Finish button using a Publish tag as above. I'm not very familiar with the WiX 2.0 stock UI's anymore but I think you'd have to do some modification of the ExitDialog if you want to add a CheckBox to conditionally show your webpage (as before, being draconian & always forcing it is your choice). WiX 3.0 is by far more "complete" than WiX 2.0. I'm honestly amazed that I struggled by using v2.0 for so long. I only upgraded to v3.0 in May this year & have shipped 6 releases already after using v2.0 since March 2007 having shipped 12 releases, 8 of them with upgrade patches as well as full installers in that time. I honestly would never recommend using v2.0 when v3.0 is available. Palbinder Sandher Software Deployment and IT Administrator T: +44 (0) 141 945 8500 F: +44 (0) 141 945 8501 http://www.iesve.com **Design, Simulate + Innovate with the <Virtual Environment>** Integrated Environmental Solutions Limited. Registered in Scotland No. SC151456 Registered Office - Helix Building, West Of Scotland Science Park, Glasgow G20 0SP Email Disclaimer -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ewart MacLucas Sent: 30 August 2008 00:13 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] launch webpage on uninstall Thanks Brian I did miss that however I was looking for someone with a sample or a tutorial rather than downloading the source code to wix and pawing through it. I imagined Wix 2.0 would have 2-3 lines of script to implement this, but reading between the lines it sounds like your saying to your knowledge wix 2.0 doesn't support the scripted launching of a url without significantly more work? -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brian Rogers Sent: Saturday, 30 August 2008 5:32 a.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] launch webpage on uninstall Hey Ewart, I think you are missing what I am saying. This is already in WIX 3.0. Since it is open source you could download the code and see how they launch a URL. Then you just need to attach the correct conditions to the custom action sequence. You would also need to pull the DLL from the WIX 3.0 binaries that has the correct custom action and use that. Thanks, Brian Rogers "Intelligence removes complexity." - Me http://icumove.spaces.live.com On Thu, Aug 28, 2008 at 4:37 PM, Ewart MacLucas <[EMAIL PROTECTED]> wrote: > Thanks Brian. I've look at the ShellExecute link but not sure how I > can apply that to my wix 2.0 project. Surely there must be a simple > wix command to launch a url on uninstall, and I wondered if anyone has > example code for > that? > > cheers > ewart > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Brian > Rogers > Sent: Thursday, 28 August 2008 6:46 p.m. > To: General discussion for Windows Installer XML toolset. > Subject: Re: [WiX-users] launch webpage on uninstall > > Hey Ewart, > > You would want to have a custom action that uses as > ShellExecute<http://msdn.microsoft.com/en-us/library/bb762153(VS.85).a > spx > >co > mmand > to run the URL. This is part of the WIX 3.0 custom actions. > > If you want, you could pull the built DLL with that custom action into your > WIX 2.0 project. > > Thanks, > > -- > Brian Rogers > "Intelligence removes complexity." - Me http://icumove.spaces.live.com > > On Wed, Aug 27, 2008 at 8:03 PM, Ewart MacLucas <[EMAIL PROTECTED]> wrote: > > > I'm trying to launch webpage when the user uninstalls my app, have > > tried various things but no joy, does anyone have a sample or a > > tutorial on how > > to > > do this from wix 2.0? > > > > > > > > > > > > <!-- Launch the application --> > > > > <CustomAction Id="LaunchFile" FileKey="Phoenix.exe" > > ExeCommand="JustInstalled" Return="asyncNoWait"/> > > > > <CustomAction Id="LaunchWebpage" ExeCommand="www.google.com" > > Return="ignore" /> > > > > > > > > > > > > <!-- Launch the application immediately on close if not uninstalling > > --> > > > > <!-- Sequences --> > > > > <InstallExecuteSequence> > > > > <Custom Action="PreventDowngrading" > > After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> > > > > <Custom Action="LaunchFile" After="InstallFinalize">NOT > > REMOVE="ALL"</Custom> > > > > <Custom Action="LaunchWebpage" > > After="InstallFinalize">REMOVE="ALL"</Custom> > > > > <RemoveExistingProducts After="InstallFinalize" /> > > > > </InstallExecuteSequence> > > > > > > > > <InstallUISequence> > > > > <Custom Action="PreventDowngrading" > > After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> > > > > </InstallUISequence> > > > > > > > > regards > > > > ewart > > ------------------------------------------------------------------------ - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------ Message: 4 Date: Sun, 7 Sep 2008 17:06:55 -0700 From: "Brian Rogers" <[EMAIL PROTECTED]> Subject: Re: [WiX-users] Property problem To: "General discussion for Windows Installer XML toolset." <wix-users@lists.sourceforge.net> Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=ISO-8859-1 Hey Mike, Just to be sure, the custom action in the InstallExecuteSequence that is using this property is being run as an Immediate action and not deferred. If it is being run as a deferred action you will need to set the CustomActionData<http://msdn.microsoft.com/en-us/library/aa370543(VS.85) .aspx>property. In the MSI this will be the name of the Custom Action that is going to run. Right before execution of the property run a Custom Action of Type 51 that sets the key (your main custom action) to the value (your PUBLIC <http://msdn.microsoft.com/en-us/library/aa370912(VS.85).aspx>, secure property) of X2GLOBALPROPERTY. You should be able to reference your data by using Session.Property("CustomActionData"). If you have already done this and are still failing, please look through the verbose log files of the MSI after the installation and make sure that the Public property isn't getting overriden with blank data during the InstallExecuteSequence. Thanks, -- Brian Rogers "Intelligence removes complexity." - Me http://icumove.spaces.live.com On Thu, Sep 4, 2008 at 3:19 PM, Mike Rerick <[EMAIL PROTECTED]> wrote: > Everyone, > > > > I'm using WiX 3.0.4401 to build my installs. > > > > I've run into an interesting problem with a global property. The property > is > defined as <Property Id="X2GLOBALPROPERTY" Secure="yes"/>. It gets its > initial list from a CA that calls a function in a custom DLL. > > > > I modified the Mondo UI file to add additional dialogs. In one of the > dialogs, I have a ComboBox that sets a global property to the value of a > SQL > Server to use for subsequent database access. > > > > I'm using this global property in CA's that get called in both the > InstallUISequence and InstallExecuteSequence. When I call a CA in the > InstallUISequence, the global property has the correct value. When I try to > use the global property in the InstallExecuteSequence CA's, it apparently > is > an empty string. > > > > My CA's in both Install sequences are VBScripts that use the > Session.Property("X2GLOBALPROPERTY") method to get the property value. > > > > Has anyone else seen this type of behavior? If so, do you have a work > around? > > > > Mike Rerick > > Sr. Software Engineer - Professional Services > > <blocked::http://www.iwsinc.com/> > > > > 9200 S.E. Sunnybrook Blvd., Suite 170 > > Clackamas, OR 97015 > > Phone: (503) 353-8068 Fax: (503) 353-8065 > > > ------------------------------ Message: 5 Date: Mon, 8 Sep 2008 09:25:24 +0800 From: Ali-Akber Saifee <[EMAIL PROTECTED]> Subject: Re: [WiX-users] MUI Language selection during uninstallation. To: wix-users@lists.sourceforge.net Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Thanks. That makes sense. However, the uninstallation is being carried out in basic ui mode so i was hoping to leverage on the standard ui text for those dialogs. I noticed the Visual C++ Redistributable manages to do this quite well. I also noticed, that the WixLoc tables bring in the Error table - which appears to be causing this mismatch in strings (the 'Please wait while windows configures ....' is from the transform, while the Roll back messages are from teh system). Is the Error table supplied in the std Wix Localization file necessary or can I just leverage on the systems resource? thanks, ./Ali On Sep 8, 2008, at 4:34 AM, [EMAIL PROTECTED] wrote: > Ali-Akber Saifee wrote: >> appropriate transform through the command line. This works fine. >> However, if >> the user switches their UI language and then uninstalls from Add/ >> Remove >> Programs - the uninstallation dialog appears in the same language >> as it was >> installed in (and not in the users current ui langage). >> > > Transforms are persistent. From the MSI SDK doc: > > The installer applies all the transforms in the transforms list at > every > installation, advertisement, installation-on-demand, or maintenance > installation of the package. > > -- > sig://boB ------------------------------ Message: 6 Date: Sun, 7 Sep 2008 21:05:29 -0700 From: Robert O'Brien <[EMAIL PROTECTED]> Subject: Re: [WiX-users] what setting causes current wix build output to land in bin\$(Configuration)\en-us versus bin\$(Configuration) where it always used to land To: 'General discussion for Windows Installer XML toolset.' <wix-users@lists.sourceforge.net> Message-ID: <[EMAIL PROTECTED] icrosoft.com> Content-Type: text/plain; charset="us-ascii" If I clear my <wixProject> | properties | build | cultures to build field and rebuild I'm still getting output in the bin\$(Configuration)\en-us folder. Is there a way to restore build output landing in bin\$(Configuration) ? -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Bob Arnson Sent: Sunday, September 07, 2008 1:34 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] what setting causes current wix build output to land in bin\$(Configuration)\en-us versus bin\$(Configuration) where it always used to land Robert O'Brien wrote: > what setting causes current wix build output to land in bin\$(Configuration)\en-us versus bin\$(Configuration) where it always used to land? > The Cultures setting. Every culture results in a culture-specific output in the specified subdirectory. -- sig://boB http://joyofsetup.com/ ------------------------------------------------------------------------ - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------ Message: 7 Date: Mon, 8 Sep 2008 04:58:48 +0000 (UTC) From: Jason Spiro <[EMAIL PROTECTED]> Subject: [WiX-users] WiX on Linux (was: WiX under Mono) To: wix-users@lists.sourceforge.net Message-ID: <[EMAIL PROTECTED]> Content-Type: text/plain; charset=us-ascii Bob Arnson <bob <at> joyofsetup.com> wrote: > Ruslan Hristov wrote: > > Is it possible to run WiX under Mono (and Linux)? I found a blog from > > 2004 that claimed it was possible, but I tried running and then > > compiling the latest version but there seems to be quite a few issues. > > You'd need a bleeding-edge Mono: WiX now requires .NET 2.0. The development WiX (3.0) needs .NET 2; the latest stable WiX (2.0) needs only .NET 1, so it should work fine with an older version of Mono. But no matter which version of Mono and WiX you use, you can't use them on plain Linux without Wine. You need to install Wine on Linux, then install both Mono and WiX inside Wine, in order for light.exe to work.[1] I haven't tried to install them under Wine yet. If you try it, please create an entry for WiX at http://appdb.winehq.org to let others know whether it works or not. ^ [1]. http://bugs.winehq.org/show_bug.cgi?id=11414#c0 ------------------------------ ------------------------------------------------------------------------ - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ ------------------------------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users End of WiX-users Digest, Vol 28, Issue 22 ***************************************** ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users