[WiX-users] Copying INI file to target folder which is not part of installer
Hi, I need to copy MyConfig.INI file to target folder via my Wix Installer. The user will have two files with him/her.The installer (bundle exe which includes my MSI) and this MyConfig.INI file. The name of this file will be fixed. But this file will not be available at build time and it will come to user from different source. At the moment I am using custom action to copy this file manually to target folder. Is there any simple way (other than custom action) using which the installer can detect presence of this file and copy this to target installation folder? Please note, the installer exe and this file will be at same location and this file is NOT available in build system so the installer only has name of this file. Thanks in advance. -James -- Dive into the World of Parallel Programming! The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??
This worked well. Thank you.James From: Phill Hogland [via Windows Installer XML (WiX) toolset] ml-node+s687559n7598508...@n2.nabble.com To: James unk...@yahoo.com Sent: Tuesday, 9 December 2014, 14:30 Subject: Re: Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue?? Define a variable in your bundle, detect the culture in your BA, and set this variable (or use one of the Burn built-in language variables). You could take different approaches here, but the result is that you use the variable in your InstallCondition to determine which of the msi packages will be installed (or use the information in the OnPlanPackageBegin handler to select whether a particular package will be installed or not.) In the example you would replace 'App' with 'Final_SF1', I assume. When you add the following to your chain, all of the PackageGroupRef related to specific cultures, in the example, are included in your chain in the sequence that you authored them. Chain ...Prerequisites ...other stuff PackageGroupRef Id='Final_SF1' Then you need to author the other parameters of the MsiPackage elements so that burn can find the msi packages and you have InstallConditions that specify whether the package is installed. I use the following but you might have different requirements. Variable Name='MyNumericVar' Value='1033' Type='numeric' bal:Overridable='yes'/ I set the var in my ba to an lcid. InstallCondition='MyNumericVar=1031' (true when installing de-DE, otherwise not installed) If you reply to this email, your message will be added to the discussion below: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598508.html To unsubscribe from Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??, click here. NAML -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598625.html Sent from the wix-users mailing list archive at Nabble.com. -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??
Hi, Thank you for your quick response. I didn't get this quite clearly. Can you please help? Attached is my bundle.wxs file. There are few thing I am not very sure how to do. Some background before the queries. The bundle.wxs pacages 3 MSI's. Prerequisite(1), ResourceFolder(2) and Final_SF1(3). They are to be called in sequence I mentioned. The only MSI which has GUI and is localized is Final_SF1. This localized MSI's are available in the respective folders (SourceFile=..\Final_SF1\bin\$(var.Platform)\$(var.Configuration)\cs-CZ\Final_SF1.msi) from my build script in respective language folders. I have created fragments as mentioned in earlier reply for few languages. Now the issues. 1. How does I fit these localized MSI's into the sequence of execution? 2. How the bundle knows (or rather I tell bundle) which langaueg Final_SF1 MSI is to be called/executed? 3. And the current code fails to build saying error CNDL0005: The Chain element contains an unexpected child element 'PackageGroup' Am I missing something obvious ? What changes I need to do in my bundle.wxs. Regards, James From: Phill Hogland [via Windows Installer XML (WiX) toolset] ml-node+s687559n759845...@n2.nabble.com To: James unk...@yahoo.com Sent: Friday, 5 December 2014, 11:21 Subject: Re: Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue?? Based on input in this thread I concluded that using embedded transforms would not work in a Burn driven scenario reliably. At the time I had difficulty understanding how to allow the packages to be created with multiple cultures in separate output folders and then pull those back into the bundle. I posted this question and got good advice. http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Using-external-cab-for-multiple-language-msi-packages-td7596991.html When a package builds, it uses an external cab file, and builds the output of that package project to separate culture named output folders (default behavior of wix). Then in the bundle's I rename the package like this Fragment PackageGroup Id='App' PackageGroupRef Id='App_de_DE'/ PackageGroupRef Id='App_en_US'/ /PackageGroup /Fragment Fragment PackageGroup Id='App_de_DE' MsiPackage Id='App_de_DE' ...stuff... SourceFile='de-DE\App.msi' Name='App\App_de-DE.msi' /MsiPackage /PackageGroup /Fragment Fragment PackageGroup Id='App_en_US' MsiPackage Id='App_en_US' ...stuff... SourceFile='_en_US\App.msi' Name='App\App_en_US.msi' /MsiPackage /PackageGroup /Fragment The packages are not compressed so the renamed msi and related external cab file end up in a sub folder relative to the bundle named App. The tree is much larger than when transforms are used, but since we stage to a server and the customer only gets the small bootstrapper exe (and the packages that their configuration needs), this seems to work for use. Others in this list mentioned using the transforms external to the msi, but I can't speak to that process. If you reply to this email, your message will be added to the discussion below: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598452.html To unsubscribe from Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??, click here. NAML Bundle.wxs (10K) http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/attachment/7598503/0/Bundle.wxs -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598503.html Sent from the wix-users mailing list archive at Nabble.com. -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??
Hi, Have you found a solution for this? Are there any pointers for this ? I have exactly same issue. -James -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598436.html Sent from the wix-users mailing list archive at Nabble.com. -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??
On Fri, 5/12/14, James [via Windows Installer XML (WiX) toolset] ml-node+s687559n7598436...@n2.nabble.com wrote: Subject: Re: Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue?? To: James unk...@yahoo.com Date: Friday, 5 December, 2014, 9:10 AM Hi, Have you found a solution for this? Are there any pointers for this ? I have exactly same issue. -James If you reply to this email, your message will be added to the discussion below: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598436.html To unsubscribe from Deploying multiple cultures using Burn/MSI(s). Wix 3.9 issue??, click here. NAML -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Deploying-multiple-cultures-using-Burn-MSI-s-Wix-3-9-issue-tp7596896p7598437.html Sent from the wix-users mailing list archive at Nabble.com. -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Uninstalling Custom Bootstrapper UI with no .Net
Thanks Bob... so there is no way to just use the default UI that doesn't depend on .Net? Just anxious that my uninstall is only responsible for taking things off rather than putting them on, then off. -Original Message- From: Bob Arnson [mailto:b...@joyofsetup.com] Sent: 05 October 2014 20:09 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Uninstalling Custom Bootstrapper UI with no .Net On 03-Oct-14 06:02, James McConville wrote: What I would like to know is, what will happen if I uninstall .Net, and then try and uninstall my app, will I still be able to uninstall? It will install .NET so your BA can run. -- sig://boB http://joyofsetup.com/ -- Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Uninstalling Custom Bootstrapper UI with no .Net
Hi all, quick question I've knocked together a custom installation UI in WPF. I've got a check, that stops the bootstrapper if I don't have .Net installed and this gets displayed via the native bootstrapper UI as expected... What I would like to know is, what will happen if I uninstall .Net, and then try and uninstall my app, will I still be able to uninstall? My UI won't be usable of course but will the bootstrapper fall back to the native UI and allow me to uninstall? Or do I need some extra configuration somewhere? Thanks for your help! James -- Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] .NET 4.5.2 and MBA
Thanks Bob, To verify my understanding, since my bundle is going to require .NET 4.5.2, I should also make that the prereq for my MBA? If so, I guess the disadvantage I see to this is that most users will now see that prereq UI instead of just seeing my custom bootstrapper UI. Thanks, James -Original Message- From: Bob Arnson [mailto:b...@joyofsetup.com] Sent: Friday, August 8, 2014 5:12 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] .NET 4.5.2 and MBA On 08-Aug-14 17:08, James Welle wrote: However an MBA does not inherently require .NET4. It could use any version. That's why I think it is a bug that those variables exist in NetFx4.wxs at all. Every bundle that uses a custom MBA should have to define those variables. The pre-req BA works like this: 1. Load MBA. If success, goto 4. 2. Execute chain. 3. When WixMbaPrereqPackageId package has been installed, goto 1 or reboot if necessary. 4. Run MBA. It wouldn't make sense to bundle one version of the Framework and install another one just for the MBA, so WixMbaPrereqPackageId is used for both. As for the missing variables in 4.5.1 and 4.5.2, see http://wixtoolset.org/issues/4180/. -- sig://boB http://joyofsetup.com/ -- ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] .NET 4.5.2 and MBA
Hello, I currently have a Wix project with a custom managed bootstrapper application that is built using Wix 3.8 and that requires .NET 4.0 as a prerequisite. My Bundle.wxs includes: PackageGroupRef Id=NetFx40Web / And my bootstrapper config looks like: ?xml version=1.0 encoding=utf-8 ? !-- copyright file=BootstrapperCore.config company=Outercurve Foundation Copyright (c) 2004, Outercurve Foundation. This software is released under Microsoft Reciprocal License (MS-RL). The license and further copyright text can be found in the file LICENSE.TXT at the root directory of the distribution. /copyright -- configuration configSections sectionGroup name=wix.bootstrapper type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperSectionGroup, BootstrapperCore section name=host type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.HostSection, BootstrapperCore / /sectionGroup /configSections startup useLegacyV2RuntimeActivationPolicy=true supportedRuntime version=v4.0 / /startup wix.bootstrapper host assemblyName=BootstrapperApplication supportedFramework version=v4\Full / supportedFramework version=v4\Client / /host /wix.bootstrapper /configuration I am attempting to upgrade to Wix 3.9 so that I can require .NET 4.5.2 as a prerequisite. When I do so and build I now get the following errors: The Windows Installer XML variable !(wix.WixMbaPrereqPackageId) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqPackageId=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs The Windows Installer XML variable !(wix.WixMbaPrereqLicenseUrl) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqLicenseUrl=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs Looking at the source I can see that these variables are defined in NetFx4.wxs but not NetFx451.wxs or NetFx452.wxs. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx452.wxs Is it my responsibility to declare these variables myself moving forward or do I need to make some other change? Thanks, James -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] .NET 4.5.2 and MBA
Carter, I'm not trying to detect any .NET versions myself. I am using the built in packages NetFx40Web and NetFx452Web. The issue is missing WiX variable definitions with 4.5.2. James -Original Message- From: Carter Young [mailto:ecyo...@grandecom.net] Sent: Friday, August 8, 2014 2:25 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] .NET 4.5.2 and MBA Testing for 4.5.2 is a bit different than testing for 4.0, as 4.5.x doesn't contain any diferent Registry Keys etc. Haang on whilst I google... :) Quoting James Welle jwe...@articulate.com: Hello, I currently have a Wix project with a custom managed bootstrapper application that is built using Wix 3.8 and that requires .NET 4.0 as a prerequisite. My Bundle.wxs includes: PackageGroupRef Id=NetFx40Web / And my bootstrapper config looks like: ?xml version=1.0 encoding=utf-8 ? !-- copyright file=BootstrapperCore.config company=Outercurve Foundation Copyright (c) 2004, Outercurve Foundation. This software is released under Microsoft Reciprocal License (MS-RL). The license and further copyright text can be found in the file LICENSE.TXT at the root directory of the distribution. /copyright -- configuration configSections sectionGroup name=wix.bootstrapper type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperSec tionGroup, BootstrapperCore section name=host type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.HostSection, BootstrapperCore / /sectionGroup /configSections startup useLegacyV2RuntimeActivationPolicy=true supportedRuntime version=v4.0 / /startup wix.bootstrapper host assemblyName=BootstrapperApplication supportedFramework version=v4\Full / supportedFramework version=v4\Client / /host /wix.bootstrapper /configuration I am attempting to upgrade to Wix 3.9 so that I can require .NET 4.5.2 as a prerequisite. When I do so and build I now get the following errors: The Windows Installer XML variable !(wix.WixMbaPrereqPackageId) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqPackageId=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs The Windows Installer XML variable !(wix.WixMbaPrereqLicenseUrl) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqLicenseUrl=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs Looking at the source I can see that these variables are defined in NetFx4.wxs but not NetFx451.wxs or NetFx452.wxs. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx452.wxs Is it my responsibility to declare these variables myself moving forward or do I need to make some other change? Thanks, James -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] .NET 4.5.2 and MBA
Maybe my question is unclear. Check out the following two files. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx452.wxs The root of the issue appears to be that NetFx4.wxs declares two variables used by a managed bootstrapper application: WixVariable Id=WixMbaPrereqPackageId Value=NetFx40Web / WixVariable Id=WixMbaPrereqLicenseUrl Value=$(var.NetFx40EulaLink) / NetFx452.wxs does not declare these variables. Is it supposed to or am I supposed to declare them myself? I have been looking a little further and it looks like maybe it was a bug that NetFx4.wxs declared them at all and I should have always been declaring them myself. Thanks, James -Original Message- From: John Cooper [mailto:jocoo...@jackhenry.com] Sent: Friday, August 8, 2014 2:49 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA Well, if you're making a package for .NET 4.5.2, look at the registry probe in NetFx and use a util:RegistrySearch to load a Burn variable with what you need. -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.® Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com www.jackhenry.com -Original Message- From: James Welle [mailto:jwe...@articulate.com] Sent: Friday, August 8, 2014 3:45 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA Carter, I'm not trying to detect any .NET versions myself. I am using the built in packages NetFx40Web and NetFx452Web. The issue is missing WiX variable definitions with 4.5.2. James -Original Message- From: Carter Young [mailto:ecyo...@grandecom.net] Sent: Friday, August 8, 2014 2:25 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] .NET 4.5.2 and MBA Testing for 4.5.2 is a bit different than testing for 4.0, as 4.5.x doesn't contain any diferent Registry Keys etc. Haang on whilst I google... :) Quoting James Welle jwe...@articulate.com: Hello, I currently have a Wix project with a custom managed bootstrapper application that is built using Wix 3.8 and that requires .NET 4.0 as a prerequisite. My Bundle.wxs includes: PackageGroupRef Id=NetFx40Web / And my bootstrapper config looks like: ?xml version=1.0 encoding=utf-8 ? !-- copyright file=BootstrapperCore.config company=Outercurve Foundation Copyright (c) 2004, Outercurve Foundation. This software is released under Microsoft Reciprocal License (MS-RL). The license and further copyright text can be found in the file LICENSE.TXT at the root directory of the distribution. /copyright -- configuration configSections sectionGroup name=wix.bootstrapper type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperSec tionGroup, BootstrapperCore section name=host type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.HostSection, BootstrapperCore / /sectionGroup /configSections startup useLegacyV2RuntimeActivationPolicy=true supportedRuntime version=v4.0 / /startup wix.bootstrapper host assemblyName=BootstrapperApplication supportedFramework version=v4\Full / supportedFramework version=v4\Client / /host /wix.bootstrapper /configuration I am attempting to upgrade to Wix 3.9 so that I can require .NET 4.5.2 as a prerequisite. When I do so and build I now get the following errors: The Windows Installer XML variable !(wix.WixMbaPrereqPackageId) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqPackageId=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs The Windows Installer XML variable !(wix.WixMbaPrereqLicenseUrl) is unknown. Please ensure the variable is declared on the command line for light.exe, via a WixVariable element, or inline using the syntax !(wix.WixMbaPrereqLicenseUrl=some value which doesn't contain parenthesis). C:\src\wix39\src\ext\BalExtension\wixlib\Mba.wxs Looking at the source I can see that these variables are defined in NetFx4.wxs but not NetFx451.wxs or NetFx452.wxs. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx452.wxs Is it my responsibility to declare these variables myself moving forward or do I need to make some other change? Thanks, James -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black
Re: [WiX-users] .NET 4.5.2 and MBA
I am trying to upgrade to 3.9 in order to make 4.5.2 a prerequisite using the built-in WiX functionality which is why I hit this. Yes, those variables appear to be used to define what version of .NET is required for your managed bootstrapper application. Any MBA will need those variables defined to install. However an MBA does not inherently require .NET4. It could use any version. That's why I think it is a bug that those variables exist in NetFx4.wxs at all. Every bundle that uses a custom MBA should have to define those variables. I just didn't see this earlier because my package itself also required .NET4 and thus those variables were defined. Thanks, James -Original Message- From: John Cooper [mailto:jocoo...@jackhenry.com] Sent: Friday, August 8, 2014 3:03 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA A .NET 4.5.2 package should be in Wix 3.9. It is not in Wix 3.8. I suspect from the naming that the extra variables are unique to the .NET 4.0 package because it is a pre-req of the managed bootstrapper which it will attempt to install before fully loading. I also suspect you don't need those variables unless they are needed by your managed bootstrapper. -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.® Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com www.jackhenry.com -Original Message- From: James Welle [mailto:jwe...@articulate.com] Sent: Friday, August 8, 2014 3:54 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA Maybe my question is unclear. Check out the following two files. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension/wixlib/NetFx452.wxs The root of the issue appears to be that NetFx4.wxs declares two variables used by a managed bootstrapper application: WixVariable Id=WixMbaPrereqPackageId Value=NetFx40Web / WixVariable Id=WixMbaPrereqLicenseUrl Value=$(var.NetFx40EulaLink) / NetFx452.wxs does not declare these variables. Is it supposed to or am I supposed to declare them myself? I have been looking a little further and it looks like maybe it was a bug that NetFx4.wxs declared them at all and I should have always been declaring them myself. Thanks, James -Original Message- From: John Cooper [mailto:jocoo...@jackhenry.com] Sent: Friday, August 8, 2014 2:49 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA Well, if you're making a package for .NET 4.5.2, look at the registry probe in NetFx and use a util:RegistrySearch to load a Burn variable with what you need. -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.® Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com www.jackhenry.com -Original Message- From: James Welle [mailto:jwe...@articulate.com] Sent: Friday, August 8, 2014 3:45 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA Carter, I'm not trying to detect any .NET versions myself. I am using the built in packages NetFx40Web and NetFx452Web. The issue is missing WiX variable definitions with 4.5.2. James -Original Message- From: Carter Young [mailto:ecyo...@grandecom.net] Sent: Friday, August 8, 2014 2:25 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] .NET 4.5.2 and MBA Testing for 4.5.2 is a bit different than testing for 4.0, as 4.5.x doesn't contain any diferent Registry Keys etc. Haang on whilst I google... :) Quoting James Welle jwe...@articulate.com: Hello, I currently have a Wix project with a custom managed bootstrapper application that is built using Wix 3.8 and that requires .NET 4.0 as a prerequisite. My Bundle.wxs includes: PackageGroupRef Id=NetFx40Web / And my bootstrapper config looks like: ?xml version=1.0 encoding=utf-8 ? !-- copyright file=BootstrapperCore.config company=Outercurve Foundation Copyright (c) 2004, Outercurve Foundation. This software is released under Microsoft Reciprocal License (MS-RL). The license and further copyright text can be found in the file LICENSE.TXT at the root directory of the distribution. /copyright -- configuration configSections sectionGroup name=wix.bootstrapper type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperSec tionGroup, BootstrapperCore section name=host type=Microsoft.Tools.WindowsInstallerXml.Bootstrapper.HostSection, BootstrapperCore / /sectionGroup /configSections startup useLegacyV2RuntimeActivationPolicy=true supportedRuntime version=v4.0 / /startup wix.bootstrapper host assemblyName=BootstrapperApplication supportedFramework version=v4\Full / supportedFramework version=v4\Client
Re: [WiX-users] .NET 4.5.2 and MBA
Interesting, does that mean that using a MBA that requires .NET4 with a bundle that requires .NET 4.5.1 or 4.5.2 does not work yet? James -Original Message- From: Sean Hall [mailto:r.sean.h...@gmail.com] Sent: Friday, August 8, 2014 3:13 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] .NET 4.5.2 and MBA The reason that the WixMbaPrereqLicenseUrl variable is missing for 4.5.1 and 4.5.2 is that there is no official direct link to the license agreement for those versions. I'm guessing that the WixMbaPrereqPackageId hasn't been added because both variables were going to be added at the same time. On Fri, Aug 8, 2014 at 3:54 PM, James Welle jwe...@articulate.com wrote: Maybe my question is unclear. Check out the following two files. https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx4.wxs https://github.com/wixtoolset/wix3/blob/develop/src/ext/NetFxExtension /wixlib/NetFx452.wxs The root of the issue appears to be that NetFx4.wxs declares two variables used by a managed bootstrapper application: WixVariable Id=WixMbaPrereqPackageId Value=NetFx40Web / WixVariable Id=WixMbaPrereqLicenseUrl Value=$(var.NetFx40EulaLink) / NetFx452.wxs does not declare these variables. Is it supposed to or am I supposed to declare them myself? I have been looking a little further and it looks like maybe it was a bug that NetFx4.wxs declared them at all and I should have always been declaring them myself. Thanks, James -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Rollback package marked as permanent
Hi folks, I've got an Exepackage in my bundle chain that I've marked as permanent but I'd still like it to be rolled back if the msi that follows it fails to install... Is this possible or am I being silly? Thanks, James. -- HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing Easy Data Exploration http://p.sf.net/sfu/hpccsystems ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] TFS 2013 -- new default build template and WiX
Hi, There are 2 ways I'm aware of that you can do this. I haven't looked at the default build workflow template for a while so can't remember exactly what needs to be replaced, but these should point you in the right direction. 1 - Create a new build task to do the rename (relocate) the files for you (I do more than the example below in my action, this means for each build that uses my template I need to add additional code to my action, but it's a small overhead I can handle). namespace BuildTasks.Activities { public sealed class RenameMSI : CodeActivity { public InArgumentstring OutDir { get; set; } public InArgumentstring DropDir { get; set; } protected override void Execute(CodeActivityContext context) { string outDir = context.GetValue(this.OutDir); string dropDir = context.GetValue(this.DropDir); File.Copy(outDir + \\MSIName.msi, dropDir + \\ MSIName.msi); } } } 2 - If you're less comfortable with writing your own build tasks, you can use some of the included tasks (with a bit of configuration) to do something similar. I used the following link when I first started messing with build templates, to reduce the amount of stuff that appears in my drop folder (see from step 12) http://geekswithblogs.net/jakob/archive/2010/05/14/building-visual-studio-setup-projects-with-tfs-2010-team-build.aspx James -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Upgrading a package previously intsalled via a burn bundle with a msi.
Hey folks, Hello, was wondering if I could get some thoughts on this... I've been asked to provide a bundled exe created in burn and a MSI for our product... The idea being that clients will generally use the exe which will install the our msi and VSTO. The standalone MSI I've been asked to provide in case a client wants to do a network deployment. My concern here is that a client receives a version 1 and then decides they want to upgrade via a network deployment when we release version 2? Is this a common scenario? And is there a recommended approach for accommodating it if so? Thanks, James -- Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free. http://p.sf.net/sfu/SauceLabs ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Which is best to use in my case: XmlFile or XmlConfig?
Hi Tim, Please see (much further) below an implementation I use. It will turn this: Configuration Extensions Data /Data /Extensions /Configuration Into: Configuration Extensions Data Extension Name=ExtName Type= SomeValue / /Data /Extensions /Configuration And on uninstall will remove the bits it has created. Most of the time I do MajorUpgrades, so I control the content in the original config file, which means I can get away with a simple XMLFile command to set the value. I only use XMLConfig when I'm poking around in files that aren't actually mine as I need to be able to back out my changes on uninstall and XMLFile isn't too good at this. Anyway, on to the code (names have been changed to protect identities): Fragment DirectoryRef Id=INSTALLLOCATION Component Id=DataExtension Guid={93217AB4-B61E-4EF0-BC07-ABFBEE569466} Win64=yes util:XmlConfig Id=DataExtension On=install Action=create Sequence=1 File=[INSTALLLOCATION] server.config ElementPath =//Configuration/Extensions/Data VerifyPath =//Configuration/Extensions/Data/Extension[\[]@Name= ExtName [\]] Node=element Name=Extension / CreateFolder/ /Component Component Id=DataExtensionName Guid={64DE6042-74C9-4F04-9BBD-C40E9D5742E6} Win64=yes util:XmlConfig Id=DataExtensionName Sequence=2 File=[INSTALLLOCATION] server.config ElementId =DataExtension VerifyPath =//Configuration/Extensions/Data/Extension[\[]@Name= ExtName [\]] Name=Name Value= ExtName / CreateFolder/ /Component Component Id=DataExtensionType Guid={250572F0-1F0A-4FED-B56C-D6654EFBA193} Win64=yes util:XmlConfig Id=DataExtensionType Sequence=3 File=[INSTALLLOCATION]server.config ElementId =DataExtension VerifyPath =//Configuration/Extensions/Data/Extension[\[]@Name= ExtName [\]] Name=Type Value=SomeValue / CreateFolder/ /Component !--Uninstall-- Component Id=DataExtensionUninstall Guid={DB19543E-F691-4452-B0B5-04F6D1F43BF2} Win64=yes util:XmlConfig Id=DataExtensionUninstall File=[INSTALLLOCATION] server.config Action=delete Node=element VerifyPath=Extension[\[]@Name= ExtName [\]] ElementPath=//Configuration/Extensions/Data On=uninstall Sequence=1 / CreateFolder/ /Component /DirectoryRef /Fragment Before you implement this, please understand what it does and (most importantly) what you are trying to achieve. James -- Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free. http://p.sf.net/sfu/SauceLabs ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Adding 3rd party assemblies to the GAC
Hello, Quick question regarding adding third party libraries to the GAC. Naturally if our app is used we don't want the 3rd party dlls to be uninstalled unless they are not being used. So my question is, does wix increment and decrement the reference counts when installing and uninstalling? Also is there a recognized approach for dealing with the possibility that a program is installed that is relying on a manually 'gacced' assembly? -- ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing .NET FRAMEWORK 4.5.1
Hi Michal, I believe this is not possible yet. There is an open issue to make this work in v3.8. http://wixtoolset.org/issues/4180/ James -Original Message- From: michalc777 [mailto:michalc...@hotmail.com] Sent: Sunday, November 24, 2013 7:26 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Installing .NET FRAMEWORK 4.5.1 Hi, I'm trying to write a bootstrapper that will install .net 4.5.1 as a prerequisite to my app installation. I'm using wix toolset v3.7 I have read some tutorials and try to perform this using: PackageGroupRef Id=NetFx451Web / But it doesn't compile. The error I get is: Unresolved reference to symbol 'ChainPackageGroup:NetFx451Web' You can see that this is the correct package group id as described here: http://wixtoolset.org/documentation/manual/v3/customactions/wixnetfxextension.html If any of you know how to solve this it would be great :) Thanks. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Installing-NET-FRAMEWORK-4-5-1-tp7590893.html Sent from the wix-users mailing list archive at Nabble.com. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Removing bundle after installing MSI's
Hello all, Need to find out if this is possible or if I've completely missed the point of Bundles. Is it possible to remove all traces of the bundle after installation, not just hide it. Essentially I want to use the bundle purely as a delivery method for the app and its dependent apps (which I want to leave alone if I remove the msi). Is it possible to do this or should I be looking at another solution? Thanks for your help! James. -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] System Properties?
I am building a bootstrapper for which I need to check minimum system requirements and I was wondering if there is a way to check for the following : Ø Available Hard Disk Space Ø RAM Ø Processor Ø Display Screen resolution I would like to do this from my Bundle element if that is possible. Also is there a list I can reference of the predefined WiX properties that can be used in Launch Conditions? James Allen -- Minimize network downtime and maximize team effectiveness. Reduce network management and security costs.Learn how to hire the most talented Cisco Certified professionals. Visit the Employer Resources Portal http://www.cisco.com/web/learning/employer_resources/index.html ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] System Properties?
This will compile however the resultant .exe will not run, what am I doing wrong? Bundle Name=AppName Version=1.0.0.0 Manufacturer=AppCompany UpgradeCode=3601032C-27E7-A8C9-4323-88E01967A9C2145E Condition=((VersionNT = v5.1) AND (ServicePackLevelhttp://msdn.microsoft.com/en-us/library/windows/desktop/aa371639(v=vs.85).aspx =2) AND (PhysicalMemory 2048) AND (OutOfDiskSpace = 'FALSE')) James Allen -- Minimize network downtime and maximize team effectiveness. Reduce network management and security costs.Learn how to hire the most talented Cisco Certified professionals. Visit the Employer Resources Portal http://www.cisco.com/web/learning/employer_resources/index.html ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] System Properties?
Thanks for all the help guys, that got me unstuck! James Allen -- Minimize network downtime and maximize team effectiveness. Reduce network management and security costs.Learn how to hire the most talented Cisco Certified professionals. Visit the Employer Resources Portal http://www.cisco.com/web/learning/employer_resources/index.html ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified
Thanks for pointing out what I was using to create it. I will link your tools into Visual Studio and try again. Thanks again. -cellurl On Tue, Feb 26, 2013 at 3:15 PM, james pruett gpscru...@gmail.com wrote: Hi, Can anyone spot what I am doing wrong? Thanks for looking. -cellurl VisualStudio10 comes up with this error:-- Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified. here is the .SED file- [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=0 UseLongFileName=0 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= TargetName=C:\aaa_jim_test\Speedanator_installer.EXE FriendlyName=Speedanator AppLaunched=Demo.WindowsForms.exe PostInstallCmd=None AdminQuietInstCmd= UserQuietInstCmd= FILE0=GMap.NET.WindowsForms.dll FILE1=Demo.WindowsForms.exe FILE2=GMap.NET.Core.dll [SourceFiles] SourceFiles0=C:\aaa_jim_test\ [SourceFiles0] %FILE0%= %FILE1%= %FILE2%= ---here are all the source files-- http://www.wikispeedia.org/speedo/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] newbie
Can anyone point me to how I debug this puppy? It failed when I did the install. Is there a fail-log or such? If I am asking wrong, please let me know. Thanks for looking -celllurl [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=0 UseLongFileName=0 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= TargetName=C:\aaa_jim_test\Speedanator_installer.EXE FriendlyName=Speedanator AppLaunched=Demo.WindowsForms.exe PostInstallCmd=None AdminQuietInstCmd= UserQuietInstCmd= FILE0=GMap.NET.WindowsForms.dll FILE1=Demo.WindowsForms.exe FILE2=GMap.NET.Core.dll [SourceFiles] SourceFiles0=C:\aaa_jim_test\ [SourceFiles0] %FILE0%= %FILE1%= %FILE2%= -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified
Hi, Can anyone spot what I am doing wrong? Thanks for looking. -cellurl VisualStudio10 comes up with this error:-- Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified. here is the .SED file- [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=0 UseLongFileName=0 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= TargetName=C:\aaa_jim_test\Speedanator_installer.EXE FriendlyName=Speedanator AppLaunched=Demo.WindowsForms.exe PostInstallCmd=None AdminQuietInstCmd= UserQuietInstCmd= FILE0=GMap.NET.WindowsForms.dll FILE1=Demo.WindowsForms.exe FILE2=GMap.NET.Core.dll [SourceFiles] SourceFiles0=C:\aaa_jim_test\ [SourceFiles0] %FILE0%= %FILE1%= %FILE2%= ---here are all the source files-- http://www.wikispeedia.org/speedo/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified
aren't you the Windows Installer http://wixtoolset.org/ folks? On Tue, Feb 26, 2013 at 3:15 PM, james pruett gpscru...@gmail.com wrote: Hi, Can anyone spot what I am doing wrong? Thanks for looking. -cellurl VisualStudio10 comes up with this error:-- Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified. here is the .SED file- [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=0 UseLongFileName=0 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= TargetName=C:\aaa_jim_test\Speedanator_installer.EXE FriendlyName=Speedanator AppLaunched=Demo.WindowsForms.exe PostInstallCmd=None AdminQuietInstCmd= UserQuietInstCmd= FILE0=GMap.NET.WindowsForms.dll FILE1=Demo.WindowsForms.exe FILE2=GMap.NET.Core.dll [SourceFiles] SourceFiles0=C:\aaa_jim_test\ [SourceFiles0] %FILE0%= %FILE1%= %FILE2%= ---here are all the source files-- http://www.wikispeedia.org/speedo/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified
hmmm, Can you help me make an installer? On Tue, Feb 26, 2013 at 3:55 PM, Steven Ogilvie steven.ogil...@titus.comwrote: Classification: Public This is the Windows Installer XML installer user list, I think you want the IExpress Self Extraction Directive File? We don't use iexpress.exe -Original Message- From: james pruett [mailto:gpscru...@gmail.com] Sent: February-26-13 4:47 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified aren't you the Windows Installer http://wixtoolset.org/ folks? On Tue, Feb 26, 2013 at 3:15 PM, james pruett gpscru...@gmail.com wrote: Hi, Can anyone spot what I am doing wrong? Thanks for looking. -cellurl VisualStudio10 comes up with this error:-- Could not load file or assembly 'GMap.NET.Core, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. The system cannot find the file specified. here is the .SED file- [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=0 UseLongFileName=0 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= TargetName=C:\aaa_jim_test\Speedanator_installer.EXE FriendlyName=Speedanator AppLaunched=Demo.WindowsForms.exe PostInstallCmd=None AdminQuietInstCmd= UserQuietInstCmd= FILE0=GMap.NET.WindowsForms.dll FILE1=Demo.WindowsForms.exe FILE2=GMap.NET.Core.dll [SourceFiles] SourceFiles0=C:\aaa_jim_test\ [SourceFiles0] %FILE0%= %FILE1%= %FILE2%= ---here are all the source files-- http://www.wikispeedia.org/speedo/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on February-26-13 4:55:06 PM. The above classification labels were added to the message by TITUS Message Classification. Visit www.titus.com for more information. -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] I watched your youtube vid. I have 3 files, created installer ok, but installing it gave win-error.
Hi, Thanks for writing Wix. I will donate to the tip jar or flattr. I tried my installer and didn't quite make it... Not sure how to diagnose it. Here is everything (.SED, _installer.exe) http://www.wikispeedia.org/speedo/ Thanks for looking! I appreciate it. -cellurl -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp and upgrades
This MSKB article discusses how to do it: http://support.microsoft.com/kb/259697 -Original Message- From: Shane Corbin [mailto:shane_cor...@selinc.com] Sent: Friday, January 11, 2013 22:49 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] DIFxApp and upgrades I'm still curious how you are calling CM_Reenumerate_DevNode on the root devnode in your custom action. Would you mind sharing this snippet? -- Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery and much more. Keep your Java skills current with LearnJavaNow - 200+ hours of step-by-step video tutorials by Java experts. SALE $49.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122612 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp and upgrades
This did the trick for us: InstallExecuteSequence RemoveExistingProducts Before=InstallInitialize / I haven't had any complaints in a long time now since doing this. At this point, I would always schedule things this way if using DIFxApp. As I described in the message you quoted, we previously had RemoveExistingProducts scheduled after InstallInitialize, which led to the problems I described. The downside to scheduling RemoveExistingProducts before InstallInitialize is that if the install fails, the old version isn't restored and the user is left with no product at all on their system. But it's better than a corrupted DIFxApp configuration being left on the system. It would really be nice if the DIFxApp team would fix these issues... Or at least document the limitations so that at least people who read the docs don't get trapped by this. -Original Message- From: Rob Hamflett [mailto:rob_hamfl...@sn.scee.net] Sent: Wednesday, January 09, 2013 14:14 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] DIFxApp and upgrades We've recently been seeing issue 1 where an upgrade doesn't work due to a missing registry entry. We're currently telling customers how to do a full repair on a case by case basis as this occurs. Did anyone ever find a fix for this? Thanks, Rob On 29/11/2010 21:23, James Johnston wrote: Hi, A couple questions, both regarding DIFxApp. (We use it to install three drivers for three plug-and-play USB devices for a hardware product that we ship.) 1. Some time ago Rob Mensching mentioned the following on this list: Yeah, there are some design issues in the DIFxApp code around Upgrades I'm still trying to figure out what to do with DIFx since we don't have the code to fix it here. I'll try to find someone to forward this thread to see if we can't get some movement (not that it has worked yet). http://www.mail-archive.com/wix- us...@lists.sourceforge.net/msg35219.h tml I am very interested in knowing whether anybody here knows what some of these design issues might be? Can DIFxApp be used when an application must be serviced in the future? I looked through MSDN and did not find any mention one way or the other regarding DIFxApp and upgrades. If upgrades are not supported (which would seem like a serious deficiency!), what is the recommended way of servicing an app that uses DIFxApp? Just what, exactly, are the caveats involved with upgrades and DIFx? The reason I ask is that upgrades are not going as well as we would like. Currently we service our application very simply. Every new version is a major upgrade: new product code, new version number. We have always scheduled RemoveExistingProducts immediately after InstallInitialize. We have tested this in-house on just about every computer at our (small) company without any issue: the upgrades generally go very smoothly. Additionally, most of our customers have also done upgrades without issue. However, there have been a few customers (i.e. about 10: enough for us to not consider it to be an isolated incident) where they were unable to upgrade. The setup program will roll back and fail when upgrading. Also, they are then unable to uninstall the software: again, the setup program rolls back when attempting to remove the product. The MSI logs always point to DIFx as the problem, with DIFx indicating that key DIFx information in the registry is missing. Searching Google seems to indicate that we may not be the only people experiencing this issue. The problem has been observed on both Windows XP SP3 and Windows 7 (few customers use Vista). Every setup package uses the version of DIFx included with WiX 3.0 (I believe it's version 2.1.1). In order to get the customer working again, we have successfully used the following workaround in every case: (1) delete the key file as specified by the driver component, (2) do a repair of the existing product; the absence of the key file triggers MSI/DIFx to successfully install the driver again, (3) we can now uninstall the old product/MSI, (4) the new product/MSI can be installed. Unfortunately, we have not been able to reproduce the problem locally. That also means that we (obviously) haven't identified what it is about the customer computer that causes problems. -- Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing a driver in Win 7
What's wrong? You're DPInst. Use DIFxApp, not DPInst. DIFxApp was designed for MSI; you're trying to fit a square peg into a round hole using DPInst. For example, have you considered whether your MSI works correctly in a rollback situation? Uninstall? Repair? Situations where the user interface has limited permissions? Other edge cases I'm not thinking of? Etc. etc. The DIFxApp programmers already figured this stuff out for you and tested it. Failing to address this stuff could make your package a future sysadmin's nightmare. The 32/64-bit issue, while inconvenient, exists with DPInst anyway if I remember right. It's possible to generate both 32-bit and 64-bit MSIs from the same WiX source code with DIFxApp. This is the correct way to do driver installation with MSI. -Original Message- From: Branko Horvat [mailto:horvat.bra...@pieps.com] Sent: Tuesday, January 08, 2013 11:20 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Installing a driver in Win 7 I'm trying to make an installer using DPInst.exe as a CustomAction. Although there are some solutions provided, it fails. I can install the driver using rightclick on .inf and Install. I can even use manually DPInst.exe on installed folder. When I use Notepad.exe instead of DPInst.exe it works. Although DPInst.exe is inlcuded in the installed folder as DPInst64.exe. I can even achieve that Notepad opens our .inf file (provide parameter). The result of installing our .msi is the entry in ARP. In Device Manager the device is not properly installed. Seeing .log shows an error in using quiet mode, or nothing. My notion was, the path is somehow wrong. So, I tried to add /path parameter but still failed. I know I can try finally using difx:Driver ... but I still try using DPInst.exe to avoid taking care of 32- or 64-bits. Do you have any idea what could be wrong? These is my fragment of trials on custom actions: Property Id=QtExec64CmdLine Value=quot;DPInst64.exequot;/ CustomAction Id=LaunchPiepsCdc64 BinaryKey=WixCA DllEntry=CAQuietExec64 Execute=immediate Return=check/ The log says: CAQuietExec64: Error 0x80070002: Command failed to execute. CAQuietExec64: Error 0x80070002: CAQuietExec64 Failed Or Property Id='Exec64DPInst'DPInst64.exe/Property CustomAction Id='LaunchPiepsCdc64' Property='Exec64DPInst' ExeCommand='' Return='asyncNoWait' / There is no error but neither proper installation. Property Id='NotepadEXE'Notepad.exe/Property CustomAction Id='LaunchPiepsCdc64' Property='NotepadEXE' ExeCommand='[SourceDir]piepscdc.inf' Return='asyncNoWait' / Here I had to provide path [SourceDir] or target [INSTALLDIR]\subfolder\some.inf ... InstallExecuteSequence Custom Action='LaunchPiepsCdc32' After='InstallFinalize'NOT VersionNT64/Custom Custom Action='LaunchPiepsCdc64' After='InstallFinalize'VersionNT64/Custom /InstallExecuteSequence -- Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS and more. Get SQL Server skills now (including 2012) with LearnDevNow - 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only - learn more at: http://p.sf.net/sfu/learnmore_122512 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS and more. Get SQL Server skills now (including 2012) with LearnDevNow - 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only - learn more at: http://p.sf.net/sfu/learnmore_122512 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp
Maybe the driver is not WHQL signed? I'm not sure why you wouldn't have the same issue with DPInst, however. I was under the impression that the various DIFX methods (DPInst, DIFxApp, DIFxAPI) would all call the same underlying code to perform the driver install. Seems like anything else would be a crazy design. -Original Message- From: Parkes, Kevin [mailto:kevin.par...@wacom.eu] Sent: Friday, November 16, 2012 15:29 To: wix-users@lists.sourceforge.net Subject: [WiX-users] DIFxApp I'm trying to replace a driver installer (essentially a self-extracting EXE with INF file etc. which runs DPInst) with a WiX-based MSI. I'm using WixDifxAppExtention and it's working except that I get a security warning: Windows can't verify the publisher of this driver software (with options to continue or abort driver installation). The existing EXE/DPInst installer doesn't produce this warning. Any idea what I might be doing wrong? Thanks -- Monitor your physical, virtual and cloud infrastructure from a single web console. Get in-depth insight into apps, servers, databases, vmware, SAP, cloud infrastructure, etc. Download 30-day Free Trial. Pricing starts from $795 for 25 servers or applications! http://p.sf.net/sfu/zoho_dev2dev_nov ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Monitor your physical, virtual and cloud infrastructure from a single web console. Get in-depth insight into apps, servers, databases, vmware, SAP, cloud infrastructure, etc. Download 30-day Free Trial. Pricing starts from $795 for 25 servers or applications! http://p.sf.net/sfu/zoho_dev2dev_nov ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Broken links on WiX web site
Ah - sorry I didn't realize the Sourceforge bug database covered the web site, too. Ticket filed. -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Sunday, October 14, 2012 03:27 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Broken links on WiX web site We do, can you please file a bug? On Fri, Oct 12, 2012 at 9:15 AM, James Johnston johnstonj@inn- soft.comwrote: Hi, The page at: http://wix.sourceforge.net/manual-wix3/WixUI_dialog_library.htm contains some broken links. Specifically, WixUI_Mondo and WixUI_Minimal are broken (404 Not Found). Not sure who maintains the web site so I'm writing to this list... -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Broken links on WiX web site
Hi, The page at: http://wix.sourceforge.net/manual-wix3/WixUI_dialog_library.htm contains some broken links. Specifically, WixUI_Mondo and WixUI_Minimal are broken (404 Not Found). Not sure who maintains the web site so I'm writing to this list... Best regards, James Johnston -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp and upgrades
-Original Message- From: Shane Corbin [mailto:shane_cor...@selinc.com] Sent: Friday, October 05, 2012 18:07 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] DIFxApp and upgrades Hey James, Did you ever get any resolution to your problem regarding scanning for new hardware when your installation must first uninstall an older version? I'm in the same boat, and was curious if you made any progress since your last post. If you are continuing with your workaround, I'd really like more information about how you are implementing your custom action to rescan. Thanks! Not really. I left my custom action in there and haven't had any complaints since then. Calling CM_Reenumerate_DevNode on the root devnode in a custom action seemed to work fine. It shouldn't hurt anything to leave it in there even if not every driver has the issue. -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] wix ftdi drivers
-Original Message- From: Branko Horvat [mailto:branko_hor...@hotmail.com] Sent: Monday, September 17, 2012 14:14 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] wix ftdi drivers My driver msi is now set to perMachine installation. When I comment both difx:Driver tags, the files are actually copied into general programFiles (not into user programFiles). But when I uncomment Driver tag, this error occurrs (got from log file under /L* switch): ... DIFXAPP: ERROR: no driver packages found in C:\Program Files (x86)\Pieps\FtdiDrivers\FtdiBusDriver\i386\ DIFXAPP: ERROR: InstallDriverPackages failed with error 0x2 ... DIFXAPP: ERROR: Unable to retrieve the driver store handle corresponding to componentId '{5BE845A4-9787-4218-B578-22878B31231B}' DIFXAPP: ERROR: Rollback failed with error 0x2 ... MSI (c) (00:F4) [15:55:53:473]: Product: FTDI Drivers Installer -- Installation failed. Your difx:Driver tag needs to be in the component with the INF file. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] wix ftdi drivers
James, I realised the RemoveFolder tags are necesary because I am installint into userprofile, not for all users on a computer as I hope it want ask admin permission to install. 1. Drivers run in kernel mode and have complete control over everything on the computer at the lowest level. How would you expect to install such a potentially-dangerous piece of software without being administrator? There is no such thing as a per-user driver install. There is no such thing as non-administrators installing a driver. Any such thing would be a pretty serious breach of security in any operating system - not just Windows. You'd best set up your Windows installer package to install as per-machine, and not per-user. I don't see how a per-user installer that loads a driver would make any sense at all, or have a happy ending. Ours installs as per-machine and I've had zero complaints about it. 2. Why would you need RemoveFolder tags just for a per-user install? Again, this makes no sense and you shouldn't need them even on a per-user installation. If I remove difx:Driver tag then I can reproduce the file hierarchy - actually not as originally is, since there are two .inf in the same directory. And, as I read somewhere, each driver must be int seperate directory for wix (and thus also in a seperate component). I solved it that way that both created directories contain it's own subdirectory with x86 files (originally it was common). I took a look of all needed files in both inf. files. Correct, difx:Driver can handle only one INF at a time in a directory. You have to install into two separate directories. So the bottom line is I can manage to procuse file hierarchy as I wish (as I suppose is expected). When I uncomment difx:Driver tags the same errors as till now: C:\Users\hob\Documents\WiX\ftdiinstall.wsx(33) : error LGHT0094 : Unresolved ref erence to symbol 'CustomAction:MsiProcessDrivers' in section 'Product:{E00E5A99- 913D-4C68-98BF-B43A471CD45D}'. C:\Users\hob\Documents\WiX\ftdiinstall.wsx(53) : error LGHT0094 : Unresolved ref erence to symbol 'CustomAction:MsiProcessDrivers' in section 'Product:{E00E5A99- 913D-4C68-98BF-B43A471CD45D}'. This is when I use: light.exe -ext WixDifxAppExtension ftdiinstall.wixobj When I use: C:\Users\hob\Documents\WiXlight.exe -ext WixDifxAppExtension -ext D:\tmp\ftdi\difxapp_x86.wixlib ftdiinstall.wixobj (you see I even tried with absolute path) it says: light.exe : error LGHT0144 : The extension 'D:\tmp\ftdi\difxapp_x86.wixlib' could not be loaded because of the following reason: Could not load file or assembly 'file:///D:\tmp\ftdi\difxapp_x86.wixlib' or one of its dependencies. The module was expected to contain an assembly manifest. This makes me think this is for .net environment. Well, yeah. You specified that difxapp_x86.wixlib was a WiX extension. WiX extensions are managed .NET assemblies. So it's no surprise you ran into this error. Look at the light syntax for properly linking in a wixlib file. Wixlib files are NOT WiX extensions, they are very different. -- Got visibility? Most devs has no idea what their production app looks like. Find out how fast your code is with AppDynamics Lite. http://ad.doubleclick.net/clk;262219671;13503038;y? http://info.appdynamics.com/FreeJavaPerformanceDownload.html ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] wix ftdi drivers
-Original Message- From: Branko Horvat [mailto:branko_hor...@hotmail.com] Sent: Thursday, September 13, 2012 12:57 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] wix ftdi drivers C:\Users\hob\Documents\WiX\ftdiinstall.wsx(29) C:\Users\hob\Documents\WiX\ftdiinstall.wsx(42) The WSX you attached got cut off at various points, can you show which lines of code were indicated by the faulty lines #29 and #42? Both difx:Driver tags are referred to: difx:Driver Sequence='1' AddRemovePrograms='no' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' / difx:Driver Sequence='2' AddRemovePrograms='no' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' / Actually I reviewed your original message. You're forgetting to link in the difxapp_x??.wixlib libraries which are in your WiX bin directory. These are required for the correct DIFxApp binaries and table to be linked into your installer package. Component Id='CompanyDirCom' Guid='A97A6647-E36F-4C9B-AFA1- EA65D51D0C08' RemoveFolder Id='RemoveCompanyDir' On='uninstall' / You don't need to have RemoveFolder. This element can be completely removed. The directories you create will be removed anyway on uninstall. This is true for all instances of RemoveFolder in your example code. I didn't have it at the beginning. But compiler (candle.exe) demanded it (maybe I didn't have components at that time yet). Also the keyValues was demanded at the same time (it said a keyValue must exist not a file), if I am not mistaken. So, I've removed it and now it looks fine. Thanx!!! It should be very rare that you actually need to use RemoveFolder. File Id='BusDriverSys' Source='i386\ftdibus.sys' / File Id='BusDriverInf' Source='ftdibus.inf' / File Id='BusDriverCat' Source='ftdibus.cat' / You can't install files in a component into multiple directories. You'll have to split this into at least two components: one for the i386 directory and one for the parent directory containing INF/CAT files. Also, you're missing some of the files from the FTDI driver package - your list of files is incomplete. Put the difxapp:Driver element in the parent directory component containing the INF file. The same issues apply to the FTDI port section you listed below. That makes me thinking as well. Thanks! - I just wanted to copy twice all three files (.inf and .cat from root driver directory and .sys from i386 subdirectory) into the common directory and I achieved it at the beginning my file tags. So, I have to deny your opinion. So when I didn't bother with installation (using difx:Driver tag, the file copied as I wanted: into FtdiBusDriver and FtdiPortDriver directores. But, I certainly think I should copy all the driver hierarchy and leave it as it is because of .inf files. Actually you have to copy the entire driver hierarchy. Have you not reviewed the INF files? Your driver installation will fail if you don't include all files referred to by the INF files, which includes more than just the SYS file. At the very least, your driver will appear unsigned and then fail to install and/or show unsigned driver pop-ups because the signature requires all files in the catalog to be present. Anyone can copy some random files, but if you want to actually *install* the driver, you need the complete driver - not just pieces of it. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Extract contents of .MSP file just like dark does for.MSI
I've used MSIX in the past to break open MSP's. -Original Message- From: Muzikayise Flynn Buthelezi [mailto:muzkay...@gmail.com] Sent: 13 September 2012 13:34 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Extract contents of .MSP file just like dark does for.MSI Hi Steven, thanks for kindly getting back to me, i will checkout this tool. thanks again, On Thu, Sep 13, 2012 at 2:18 PM, Steve Ogilvie sogil...@msn.com wrote: There is a nicer tool called instedit shows the relationship of each element... __ Steven Ogilvie 3 - 45 Bertrand Street Ottawa, ON Canada K1M 1Y5 Mobile: +1 613 299-2121 E-mail: sogil...@msn.com -Original Message- From: Peter Shirtcliffe pshirtcli...@sdl.com Date: Thu, 13 Sep 2012 12:11:48 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Extract contents of .MSP file just like dark does for.MSI When I want to see what is in a patch, I load the MSI into Insted (this works with Orca too, If I remember rightly), then select view patch from the menu. The differences applied by the patch are highlighted in colour. -Original Message- From: Muzikayise Flynn Buthelezi [mailto:muzkay...@gmail.com] Sent: 13 September 2012 12:07 To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Extract contents of .MSP file just like dark does for.MSI Hi All, trust everyone is well. I've generated a patch file (.msp) and I would like to extract the content of this file just like dark.exe does for .msi the reason i'm trying to do this is because i would like to see before hand what files will be updated. also one more question is there a way to check what the differences is when doing diff on Original and Latest: torch.exe -p -xi Original.wixpdb Latest.wixpdb -out patch\diff.wixmst this generates diff.wixmst which is used later for generating the patch (.msp) it would be nice to know before hand what files will be updated or does this only occur at a later stage when producing the patch (msp) file pyro.exe patch\patch.wixmsp -t MPatch patch\diff.wixmst -out patch\patch.msp thanks in advance for your kind assistance, -- Best always, Muzi 082 594 4807 *Light, Love Prosperity in Abundance!!!* -- --- - Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Best always, Muzi 082 594 4807 *Light, Love Prosperity in Abundance!!!* -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Re: [WiX-users] wix ftdi drivers
Some comments below; they may not fix your problem, but point to other issues in the WXS: -Original Message- From: Branko Horvat [mailto:branko_hor...@hotmail.com] Sent: Wednesday, September 12, 2012 09:27 To: wix-users@lists.sourceforge.net Subject: [WiX-users] wix ftdi drivers C:\Users\hob\Documents\WiX\ftdiinstall.wsx(29) C:\Users\hob\Documents\WiX\ftdiinstall.wsx(42) The WSX you attached got cut off at various points, can you show which lines of code were indicated by the faulty lines #29 and #42? Component Id='CompanyDirCom' Guid='A97A6647-E36F-4C9B-AFA1- EA65D51D0C08' RemoveFolder Id='RemoveCompanyDir' On='uninstall' / You don't need to have RemoveFolder. This element can be completely removed. The directories you create will be removed anyway on uninstall. This is true for all instances of RemoveFolder in your example code. difx:Driver Sequence='1' AddRemovePrograms='no' Legacy='no' PlugAndPlayPrompt='no' ForceInstall='yes' / I would suggest changing ForceInstall to no. If you set it to yes like in your example, you could force downgrading the driver to an older version if the user's system had a newer version of the driver installed. That may cause compatibility problems with other software and devices installed on the customer's computer that also uses an FTDI driver. File Id='BusDriverSys' Source='i386\ftdibus.sys' / File Id='BusDriverInf' Source='ftdibus.inf' / File Id='BusDriverCat' Source='ftdibus.cat' / You can't install files in a component into multiple directories. You'll have to split this into at least two components: one for the i386 directory and one for the parent directory containing INF/CAT files. Also, you're missing some of the files from the FTDI driver package - your list of files is incomplete. Put the difxapp:Driver element in the parent directory component containing the INF file. The same issues apply to the FTDI port section you listed below. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WiX joins the Outercurve Foundation
Another concern might be slight alterations of the user interface. For example, suppose I want to slightly modify one of the user interface templates. I've read it's recommended to copy/paste a small snippet of user interface WiX code into my project and customize it. Does that mean my entire setup project must be open source? Actually, now that I think about it - I read that in the official WiX manual: http://wix.sourceforge.net/manual-wix3/WixUI_customizations.htm Changing the UI sequence of a built-in dialog set It is possible to change the default sequence of a built-in dialog set. To do so, you must copy the contents of the Fragment/ that includes the definition of the dialog set that you want to customize from the WiX source code to your project. So I guess if I follow these directions in the WiX manual then I would have to open source my entire setup project? It would be nice if the manual would explicitly say one way or another. Or if the user interface wxs files could be licensed separately with a more permissive license. (I wouldn't be at all surprised if Microsoft itself is violating the license in this regard. Given the widespread use of WiX in MSFT, surely there are some violations like this.) -Original Message- From: Bruce Cran [mailto:br...@cran.org.uk] Sent: Monday, August 20, 2012 16:30 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] WiX joins the Outercurve Foundation On 20/08/2012 16:41, Rob Mensching wrote: I think wrote down the answer this morning: http://robmensching.com/blog/posts/2012/8/20/The-WiX-toolset-license Thanks, it's great to see that update on licensing. Since the 'viral' nature of copyleft licenses scares some people, it might be worth if/when updating the license for the sample code to make it explicit that the templates generated in Visual Studio won't be under the MS-RL either. -- Bruce Cran -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] heat and xslt transform to keep only pdb files
Have you tried: xsl:template match=wix:Directory[not(contains(*/@Source, '.pdb'))] / -Original Message- From: Naim Kingston [mailto:naim.kings...@ancamotion.com] Sent: 03 August 2012 01:55 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] heat and xslt transform to keep only pdb files I'm using heat to try and harvest a directory of all the pdb files. I know that there is an option for heat to look into the vcproj files to get them, but I may need to expand this in the future to deal with other file types as well, such as linker map files, and the like. What I've got so far is an xslt transform that filters out all whitespace and files except for the pdb files, but it also leaves behind empty directories: ?xml version=1.0 encoding=UTF-8? xsl:stylesheet version=1.0 xmlns:xsl=http://www.w3.org/1999/XSL/Transform; xmlns=http://schemas.microsoft.com/wix/2006/wi; xmlns:wix=http://schemas.microsoft.com/wix/2006/wi; !-- strip all extraneous whitespace -- xsl:strip-space elements=*/ !-- Copy all attributes and elements to the output. -- xsl:template match=@*|* xsl:copy xsl:apply-templates select=@* / xsl:apply-templates select=* / /xsl:copy /xsl:template !-- Exclude all File elements that are not a .pdb file -- xsl:template match=wix:Component[not(contains(wix:File/@Source, '.pdb'))] / !-- Exclude all Directory elements that are svn folders -- xsl:template match=wix:Directory[@Name='.svn'] / /xsl:stylesheet I've tried several different ways (found mainly from google, and messing around with xslt) of trying to recursively filter out the empty directories (and then their parent directories which will be empty, etc, etc), but I haven't been successful. I'm a beginner to xslt, and to be honest, I didn't think this would be so hard, and suspect it shouldn't be, I'm probably just not thinking in the right way. These are the things I've tried so far: !-- Exclude all Directory elements that are not an ancestory of a .pdb file -- xsl:template match=wix:Directory/wix:Component[not(contains(wix:File/@Source, '.pdb'))] / xsl:template match=wix:Directory xsl:if test=not(count(//wix:Component) = 0) xsl:copy xsl:apply-templates select=@*|node() / /xsl:copy /xsl:if /xsl:template xsl:template match=/ xsl:apply-templates select=//wix:Component[not(wix:Component)]/ /xsl:template xsl:template match=wix:File xsl:apply-templates select=ancestor::wix:File[1]/ /xsl:template Not all at once of course, one by one. And I'm all out of ideas. I've taken a look at an XML book as well, with a section on XSLT, but that didn't help very much. The whole point of this is that when we build and create the msi of our product, to take all the pdb files (built in release, perhaps linker map files as well) and bundle them into another msi so we can install them alongside our product for when we need to do debugging on a particular machine. Only for development purposes of course, we would never distribute this to a customer! And I don't actually know if it's possible to install 2 separate projects to the same folder, or maybe I can set them up as separate features (main product and debug symbols), and have 2 msi files, one for each feature? Anyway, regardless of the crazy stuff I intend to do for debugging purposes, I figured this would be a good excuse to get a little familiar with xslt. Hopefully someone is able to make sense of what I'm trying to do :) -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] How to mix 32bit driver and 64bit driver into same package?
Did you just miss the discussion that has been going on at this exact same moment? Someone else is trying to do the same thing as you with DPInst. Sorry, but your approach is broken. I doubt you're considering many of the intricacies of Windows Installer. Read my response at the end of http://sourceforge.net/mailarchive/forum.php?thread_name=01cc01cd52ec%248842 7a70%2498c76f50%24%40inn-soft.comforum_name=wix-users You shouldn't use DPInst. It isn't supported. DIFxApp is the supported solution and works just fine - many of us use it without issue (mostly!). -Original Message- From: tzleon [mailto:tzl...@gmail.com] Sent: Tuesday, June 26, 2012 04:36 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] How to mix 32bit driver and 64bit driver into same package? Now I found a solution, I gave up the difxapp_*.wixlib, but using dpinstall.exe instead(see http://www.codeproject.com/Articles/44191/Drivers-Installation-With-WiX), and using bootstrapper to launch the executable file while the previous msi copied driver binary to system. Now another problem is uninstall the driver... -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/How-to-mix-32bit-driver-and-64bit-driver- into-same-package-tp7579071p7579100.html Sent from the wix-users mailing list archive at Nabble.com. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp driver files in multiple directories
-Original Message- From: Frank Jenner [mailto:frank8...@gmail.com] Sent: Friday, June 22, 2012 19:29 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] DIFxApp driver files in multiple directories I'm attempting to use the WixDifxAppExtension to install a driver. In the only DIFxApp examples I have seen (of which there are very few), all of the files associated with the driver are located in the same directory, and all of those files are nested directly beneath the Component that contains the difx:Driver element. In my application, however, I must deploy a driver that does not have a flat directory structure. In general, I cannot change the directory structure used by the driver because the driver is already signed, which means that any changes that I make to the INF file to accommodate a new directory layout would invalidate the signature. Thus, I arrive at a couple of questions: 1.) With the DifxAppExtension, what is the appropriate way to add a driver that has files in multiple directories (and therefore presumably needs multiple Components)? 2.) Are there any particularly good resources out there of using the WixDifxAppExtension with WiX 3.x in general? It took me quite a while to piece together the information I needed to write the .wxs file, as well to construct the appropriate arguments to candle and light. I used multiple components. Add the DIFxApp extension elements only to the component that holds the INF file. It will work. With DIFxApp, all files in all application components are installed as normal. So your driver will be installed into your application directory, along with all your other files. What the DIFxApp element will do is add a custom action that runs at the end of setup to install the driver. This custom action invokes DIFX to install the driver, and DIFX doesn't care what files were in what component - as long as you have the complete driver file tree installed, it will work. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] How to mix 32bit driver and 64bit driver into same package?
-Original Message- From: tzleon [mailto:tzl...@gmail.com] Sent: Monday, June 25, 2012 06:52 To: wix-users@lists.sourceforge.net Subject: [WiX-users] How to mix 32bit driver and 64bit driver into same package? I wish to mix 32bit driver and 64bit driver into same package, but the problem is the two referenced library difxapp_x64 and difxapp_x85 can't be imported into same package, otherwise, there is a error as below: Error1 Duplicate symbol 'CustomAction:MsiProcessDrivers' found. This typically means that an Id is duplicated. Check to make sure all your identifiers of a given type (File, Component, Feature) are unique. C:\Program Files (x86)\Windows Installer XML v3.6\bin\difxapp_x86.wixlib 0 1 HKeySetup How to solve this problem? I was unable to find a method for creating an MSI that works on both 32-bit and 64-bit Windows when using DIFxApp. After some investigation, I concluded that it was impossible without having access to source code of DIFxApp to create a custom version of DIFxApp. The solution I used was as follows: 1. All bit-agnostic files were specified to be stored in a common media CAB file with a bit-agnostic filename. This way, the same software distribution download can support both 32-bit and 64-bit Windows without significant increase in file size - both 32-bit and 64-bit MSI files can share the same cabinet. 2. All 32-bit specific or 64-bit specific files were specified to be stored in separate CAB files: one for 32-bit and one for 64-bit. 3. The WiX source code was customized so that it could be compiled for either 32-bit or 64-bit use using conditional compilation. 4. The build script builds both 32-bit and 64-bit versions using appropriate conditional compilation variables. The resulting shared cabinet files (#1) are then compared to be sure they are identical, and then the output directories are merged. 5. Launch conditions are used to prevent the 32-bit MSI from running on 64-bit Windows. The 64-bit MSI is specified as being a 64-bit MSI, so it won't even run on a 32-bit system. 6. The bootstrapper decides which MSI to use, based on the bitness of the computer. This solution allows you to use the MSI files as-is without fussing with any special command line parameters (e.g. for transforms). Maybe there is a cleaner way to do this but I haven't found it. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] custom action with administrator privileges
-Original Message- From: nejiba [mailto:nejiba.ta...@gmail.com] Sent: Monday, June 25, 2012 09:26 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] custom action with administrator privileges Re I was following the tutorial here: http://www.codeproject.com/KB/library/driver-install-with-wix.aspx The command usind DPinst.exe works and shows me the message the driver was successfully installed but my case is a little more specific.. the device still not working and my computer cannot detect it. I think that the command wdreg do more things than simply installing the driver (add register key ) In this case I must use the cmd command or is there an other alternative? Thanks! That's because DPInst is the wrong tool for the job. Use DIFxApp extension. DPInst is not really supported or intended for use with Windows Installer. The fact that this article has 18 votes and is rated 4.96 stars out of 5 speaks very poorly about the knowledge level of people at Code Project. My experience is that Code Project has many articles that have key errors or omissions, or takes a fundamentally flawed approach (e.g. use of undocumented behavior when it's not needed), but still gets a high ranking/vote because it just works. I suspect the site is frequented by developers who are just looking for code to copy and paste to get it to work on their local system, who don't care what the code is actually doing, and who don't care about how well the resulting product will actually work, whether it will be maintainable, whether it will work when faced with new versions of Windows and various 3rd-party programs installed, whether it will fail when faced with certain edge conditions, etc. I still read Code Project articles - many of them do have useful information and can help point me in the right direction when trying to learn from MSDN documentation. But I read them over with a very critical eye - I think about whether there are simpler, better supported ways of doing what the author is doing. And I always revise all code used from there, and carefully check each line of code for bugs, and check it against official documentation to be sure that various API calls, etc. are being made properly. In short, I don't use any code from there without a careful code review. I have seen many cases where the Code Project author reinvents the wheel, when a simple API call could have sufficed. This is one of those cases. If you look at the end of the page, there are some comments: I do have one question. How is doing it using the DPInst different from using the that is part of the DifxAppExtension for WiX? The author's response: DifxApp can cause difficulties if you want to create one version of the installer both for x32 and x64 platforms. From the other side, DifxApp allows to handle driver installation rollbacks in much easier way. I must say that the main reason is that I have much more experience in using DPInst than DifxApp. So he decided to use the incorrect, unsupported way just because he has more experience with DPInst? Because he was unable to figure out one of the many possible solutions to making an MSI with DIFxApp that can work on both 32-bit and 64-bit Windows? At the same time, he admits his solution doesn't handle one of the key Windows Installer features - rollback. Apparently he's afraid of learning something new, so he tried to reinvent the wheel and did it poorly. Sad. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Windows Installer 3.1 or 4.5 for XP?
-Original Message- From: Don Walker [mailto:don.wal...@versaterm.com] Sent: Tuesday, June 12, 2012 15:56 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Windows Installer 3.1 or 4.5 for XP? I'm likely to be supporting installs on Windows XP until past the MS end of support date. Most of our customers running XP most likely have Windows Installer 3.1 installed. As far as I can tell, upgrading to Windows Installer 4.5 will force a reboot. Should I require Windows 4.5 anyway? What does 4.5 offer that you need, which 3.1 does not? If there are no features in the newer version that you need, then why force your customers to needlessly reboot? Version 3.1 is included with Windows XP SP3, which we require anyway as a prerequisite. As long as they have XP SP3, no reboot is necessary. Since we don't need anything in 4.5, we don't require it. I have two concerns about what will happened if I don't upgrade: 1. I'll use some new property or feature that is not supported by Windows Installer 3.1. I discovered after the fact that I had done this when I made use of MsiLogFileLocation and MsiLogging in a custom action before noticing that they weren't supported. The features supported seem to be well- documented at http://msdn.microsoft.com/en- us/library/aa816408%28v=vs.85%29 so as long as I am careful shouldn't be a big issue. Isn't that what the InstallerVersion attribute of the Package element is for? We use it and haven't had any problems. Of course, as a general rule, I tend to carefully read all documentation about any WiX elements and attributes before using them. That includes both the WiX documentation and the backing Windows Installer documentation on MSDN as well. As you might imagine, I've never accidentally found myself using something that wasn't supported, anyway. (Not carefully reading all documentation equates to sloppy programming that is asking for trouble, in my book.) 2. I am more concerned that I will end up using some new property or feature that is not supported by Windows Installer 3.1 indirectly through the use of a WiX feature. Some of the WiX features are quite clearly linked to one or more Windows Installer features and can be checked. I'm not really clear if there are a significant number of undocumented dependencies on Windows Installer versions. Upgrading to Windows Installer 4.5 for XP (and Vista) looks like the safest approach. Comments/opinions would be appreciated. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application
-Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Wednesday, May 09, 2012 05:44 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application To pass a security review at Microsoft, the VS2010 CRT must be used. The VS2010 CRT has the latest security defenses built in. Unfortunately, the VS2010 CRT does not run on Win2K. The bad error message actually happens in the VS2010 CRT. Our code in Burn doesn't even have the opportunity to load. A simple VC2008 C program could do something like this, as a sort of bootloader-for-the-bootloader: 1. Check version of Windows. 2. If Win2000 or Win XP before SP3, throw friendly error message and exit. (maybe ShellExecute to user's default browser for Windows Update if on XP) 3. Extract the contained Burn installer (note: does not go and get from Internet!). 4. Launch the VS2010 compiled Burn. The idea is to just do a version check, and then start the real installer. Of course, newer VS versions introduce new security features so I understand and support the idea behind this policy for large applications. But this is a simple application whose scope will be very limited. I would think a very thorough code review should uncover any issues. (Besides, how are you going to attack a dumb *bootloader* like this that doesn't even communicate?) This is especially a critical point because it's the very first thing the user sees, as a first run out-of-box experience. A broken installer with an obscure error message means the user will just move on. Also, because Burn is going to be widely used within Microsoft and ISVs, this is going to be a very common problem - all the more reason to fix it. If exceptions to this rule can't be made for cases like this then I think someone up top needs their head checked. As it stands now, I guess every WiX customer who wants to address this issue is going to have to reinvent the wheel that I have just proposed, just because of this policy. Next version will be even more interesting since last I checked VS11 CRT only supports Win7+ (which I believe cuts support for WinXP SP3 and Vista before they are out of service). Vista too?! That pretty much rules out every PC older than a couple years old... let's say 3 years by the time VS11 releases... unless the user upgraded from Vista to 7. That's just out of touch with reality - I know a lot of people who (1) own computers more than a couple years old, (2) don't have the money to buy a new one, (3) don't have the expertise or money to upgrade to Windows 7. People like us who are comfortable upgrading to the latest Windows operating system are the exception - not the rule. (Perhaps Apple has found the secret, with frequent easy-to-install $29 upgrades?) Most people I know don't buy new computers every couple years. That includes myself - at home, I was running Vista on both my personal laptop and desktop until earlier this year. That's because Vista was good enough and I wasn't anxious enough to spend $$$ and time reformatting to get the fancy new Windows 7 taskbar. Unfortunately, both computers experienced hard drive crashes and now I have a new Win7 laptop; the desktop hasn't been addressed yet. Had I not experienced these hardware failures, I'd likely still be running Vista when VS11 comes out. (I never really understood/understand all the hate directed against Vista, and the love directed towards Windows 7. They are very similar operating systems. I suspect Vista got an unfair bad rap because the independent hardware vendors / independent software wasn't ready yet for the big changes; by the time Win7 came around, they had their act together. I used Vista even before SP1 came out and didn't really have any big complaints.) -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application
You might find the bootstrapper in Visual Studio 2008 to be useful. We're using it to deal with the .NET Framework 2.0 prerequisite, and it works fine even on Win XP RTM (untested on Win2K). (.NET 2.0 is the minimum we require because Vista RTM includes .NET 2.0, so prerequisite install is only needed for XP customers.) The bootstrapper can automatically download the framework from Microsoft and install it. After seeing how few Vista customers there are though, I don't really see a good reason to prefer it over .NET Framework 3.5, which I guess comes with Windows 7. As I recall, the big gripe I had with .NET 3.5 was that it was extremely bloated, making the ~20 MB .NET 2.0 install look like nothing. For the Visual C++ 2008 runtimes, we just use the merge modules. If you have other prereqs, you can add them. If your requirements are much more complex though, I would imagine you'd be better off with something like Burn. As a customer who gets my credit card information swiped at the store, I would hope that the Win2K machines aren't Internet-facing at all. No security patches I would imagine these days... -Original Message- From: rdinglebham [mailto:rdin...@accelitec.com] Sent: Wednesday, May 02, 2012 19:28 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application The problem surfaced when I started bundling my MSI packages in order to take advantage of bootstrapping the perquisites like .NET Framework 2.0 SP2, C++ run time libraries. We've been careful to build all of our client adapters in .NET 2.0/VS2008 since WIN2K is still widely used in the retail world - we have a number of customers that have a mix of XPE and WIN2K in a single store... So my WiX 3.6 MSI packages work just fine; it's the WiX 3.6 burn binaries that are embedded into the .EXE that are incapable with WIN2K. At this point I'm just copying both the bundle EXE and the MSI to my customer dropboxes. I'm just glad that I wrote all my custom actions in C# and not C++! -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application
http://www.netmarketshare.com/operating-system-market-share.aspx?qprid=11qp customb=0qptimeframe=Mqpsp=149qpnp=11 ^-- Source of my data in this message... That is something that has been bugging me too while reading this discussion. So my random thoughts on this topic of OS compatibility... The cryptic error originally reported by OP isn't good. We only support Windows XP SP3+ as well, but if the user double-clicks the bootstrapper / self-extracting EXE, they need to get a messaging saying they need XP - not some cryptic error that might turn a user away from our application. Unfortunately, with the way Visual C++ has been dumping support for older versions of Windows, it looks like we would need to retain an older Visual C++ compiler (or find a competing compiler) for the sole purpose of making our own custom bootstrapper that shows a reasonable error. What a pain! Would be nice if WiX prevented this piece of overhead... From that link, I would guess that Windows 2000 usage must be close to zero (lumped into the 2.51% Other category). I'm less worried about that. But there's still significant XP usage, and dumping support for pre-SP2 versions of XP is disturbing. How can the bootstrapper request the user to install SP3 if the bootstrapper itself requires SP2/SP3? From what I have read, the situation gets much worse with VS11 since it drops XP support completely. This is a problem, because apparently XP still has 46% of the market. I know many of our customers still use it. We can't drop support for it. VS11 is out of touch with reality in this respect. If bootstrappers and/or custom actions start requiring Vista+, we'd have to avoid the newer versions of WiX. We'll also have to avoid VS11 ourselves for the time being. The improvements in VS11 might not justify dropping support for a lot of our customers, if it turns out not to be realistic to ask them to upgrade. And the concerns I already outlined about bootstrappers not failing gracefully apply doubly-so here - even if XP drops to, say, 10% of the market and we decide to drop support, there's still enough out there that we need the bootstrapper to kindly request Vista+. It would be nice if XP suffered a precipitous drop in market share this year, but I doubt it. Hopefully it will go away soon. I suspect it will still be common for another 2 years until companies are forced to move away from it when MS finally kills support (or suffer the security liability from an unpatched/unsupported OS). Some people/companies tend to avoid change until their lack of planning forces them into it - and maybe MS dropping support will push them over the edge to get Win7/8. By then, VS12 would be coming down the pipeline, and companies like us would still be stuck on VS2010 or older due to XP compatibility concerns if we decide not to drop support for XP just yet. (XP is the energizer bunny or something... it keeps going and going. I can't remember another consumer OS version that has had such a long life cycle!) James -Original Message- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Monday, April 30, 2012 15:57 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Bundle fails on WIN2K machine .exe is not a valid Win32 application I agree with dropping support for Win2k but what is a shame is that running the exe doesn't display a more useful error message. I don't suppose there is anything that can be done to change this? Neil -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Verbose Bundle Logging
Hi All, Is there an equivalent logging command for bundles as there is for MSI files? msiexec /i C:\MyPackage\Example.msi /L*V C:\log\example.log Cheers, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Wow!
And the nice thing about an ISO is you get non-essential files as well. For example, a readme file - which I highly doubt is included when running /layout. For example, examining my ISO of Windows Driver Kit 7.1.0 shows some files which I highly doubt are included in a /layout administrative image made. For example, Relnote.htm and Install.htm. Now I'll probably have to track down and include these types of files myself. And the ISO format is also convenient for mounting to a virtual machine... It's much better if a release team can get these details straight on their own and just do it once for everyone, like Chris says. Now my assembled full image is probably going to look different from someone else's. The link to SQL Development Tools is comical. Instead of including a link to a single file that includes everything, they turned it into a 3 step process that required a few paragraphs of writing to describe the whole process. If getting off-line images of Microsoft software is now going to include dropping to the command line to assemble my own administrative install point, NO THANKS!! What an unnecessary chore that didn't used to exist. I hope someone on the other side of the fence is listening. Brings back bad memories of that old Internet Explorer 4 active setup that didn't always work. Does anybody honestly think that web setup would still run correctly if used today? I bet all those CAB files it would download from Microsoft.com are long gone. James -Original Message- From: Christopher Painter [mailto:chr...@iswix.com] Sent: Wednesday, March 07, 2012 19:34 To: General discussion for Windows Installer XML toolset.; General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Wow! Thankfully those instructions are somewhat easy atleast. Some of these how to create an admin install are horribly complex. To me, as a paying customer at a very, very large enterprise, it annoys the hell out of me. Don't make me figure out how to do this for all of the systems that I support. Just give me a download link to the darn ISO. Something the build/release team could have done just once and published now has to be redone over and over by thousands of organizations. I'm sorry, I just don't get it on this one. From: John H Bergman (XPedient) john.berg...@xpdnt.com Sent: Wednesday, March 07, 2012 1:04 PM To: General discussion for Windows Installer XML toolset. wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Wow! To reinforce a comment earlier about this being Microsoft's apparent direction as well, The latest SSDT (SQL Development Tools) uses the same methodology of the /layout switch. http://msdn.microsoft.com/en-us/data/hh297027 John -Original Message- From: James Johnston [mailto:johnst...@inn-soft.com] Sent: Tuesday, March 06, 2012 10:26 AM To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Wow! And this is why there needs to be a simple off-line bundle file ready to download. Seems like it shouldn't be too hard to include in the WiX build process, and would make a lot of people's lives easier. Realistically, I don't think there's a better solution than utilizing the built-in file downloader in a web browser for pulling in the archive. Anything else just makes it more complicated and unfamiliar for the user... Dog-fooding is a great idea; having a web setup available is a good idea for that reason. Just don't make this the only option... Here's an idea: have the capability of providing both web setups and generating premade off-line bundles ready for download and dog-food that. I'm sure many setup authors (myself included) will want to provide only premade off-line bundles, or both premade off-line bundles and web setups (i.e. having more than *just* a web setup). Dog-food that! :) -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: Tuesday, March 06, 2012 09:22 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Wow! Interesting discussion. That brought me to the point to run wix36.exe /layout. As expected in a firewall protected company environment the web bootstrapper didn't work (see below log). Also I expect different behaviors in different company environments using different web download proxy virus scanners (or as these things are called). I think doing an implementation for all that is almost impossible. But what about an approach to spend burn an additional parameter to get a list of URLs (e.g. /downloadurls ). Imho almost every firewall should be able to handle manual downloading of MSI files. Not very comfortable but at least an approach to get an offline image in a company environment... Regards, Tobias [1BE8:1094][2012-03-06T10:10:56]: Caching bundle from: 'C:\Users\MyUser\AppData\Local\Temp\{53bade28-8480-4557-92fc-13a20c501a3e
Re: [WiX-users] Wow!
And this is why there needs to be a simple off-line bundle file ready to download. Seems like it shouldn't be too hard to include in the WiX build process, and would make a lot of people's lives easier. Realistically, I don't think there's a better solution than utilizing the built-in file downloader in a web browser for pulling in the archive. Anything else just makes it more complicated and unfamiliar for the user... Dog-fooding is a great idea; having a web setup available is a good idea for that reason. Just don't make this the only option... Here's an idea: have the capability of providing both web setups and generating premade off-line bundles ready for download and dog-food that. I'm sure many setup authors (myself included) will want to provide only premade off-line bundles, or both premade off-line bundles and web setups (i.e. having more than *just* a web setup). Dog-food that! :) -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: Tuesday, March 06, 2012 09:22 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Wow! Interesting discussion. That brought me to the point to run wix36.exe /layout. As expected in a firewall protected company environment the web bootstrapper didn't work (see below log). Also I expect different behaviors in different company environments using different web download proxy virus scanners (or as these things are called). I think doing an implementation for all that is almost impossible. But what about an approach to spend burn an additional parameter to get a list of URLs (e.g. /downloadurls ). Imho almost every firewall should be able to handle manual downloading of MSI files. Not very comfortable but at least an approach to get an offline image in a company environment... Regards, Tobias [1BE8:1094][2012-03-06T10:10:56]: Caching bundle from: 'C:\Users\MyUser\AppData\Local\Temp\{53bade28-8480-4557-92fc-13a20c501a3e}\. be\WiX36.exe' to: 'C:\ProgramData\Package Cache\{53bade28-8480-4557-92fc-13a20c501a3e}\WiX36.exe' [1BE8:1094][2012-03-06T10:10:56]: Registering bundle dependency provider: {53bade28-8480-4557-92fc-13a20c501a3e}, version: 3.6.2627.0 [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed to send request to URL: http://wixtoolset.org/releases/3.6.2627.0/data/core.msi [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed to send request to URL: http://wixtoolset.org/releases/3.6.2627.0/data/core.msi [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed to connect to URL: http://wixtoolset.org/releases/3.6.2627.0/data/core.msi [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed to get size and time for URL: http://wixtoolset.org/releases/3.6.2627.0/data/core.msi [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed attempt to download URL: 'http://wixtoolset.org/releases/3.6.2627.0/data/core.msi' to: 'C:\Users\MyUser\AppData\Local\Temp\{53bade28-8480-4557-92fc-13a20c501a3e}\W ix' [1D50:1394][2012-03-06T10:11:17]: Error 0x80072efd: Failed to acquire payload from: 'http://wixtoolset.org/releases/3.6.2627.0/data/core.msi' to working path: 'C:\Users\MyUser\AppData\Local\Temp\{53bade28-8480-4557-92fc-13a20c501a3e}\W ix' [1D50:1394][2012-03-06T10:11:17]: Failed to acquire payload: Wix to working path: C:\Users\MyUser\AppData\Local\Temp\{53bade28-8480-4557-92fc-13a20c501a3e}\Wi x, error: 0x80072efd. -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Wow!
Also agree 100% on this for the reasons Chris mentions. The rest of this message is my (perhaps strong) opinion on web setups. Web setups for development tools in general encourage bad habits. It might not be such a big deal with consumer software on home computers, like Acrobat Reader company - which fits in with the general consumer business of buy this mobile device [cell phone, tablet, MP3 player, laptop], don't worry about maintenance - you'll throw it in the trash bin in a year anyway. These vendors don't think about long-term maintenance - a web setup is one aspect of this. But WiX is not consumer software, and a web setup has no place with WiX users who are correctly managing their development environment processes - for the reasons Chris mentions. (Unless you are developing throw-away software that won't last a year). I need to be able to check out code from my repository 5 years down the road, and recompile it with exactly the same tools used to originally build that software from 5 years ago. Web setups don't provide a guarantee that I can reproduce the same development environment. The best way of distributing long-lifetime software is a complete image provided by the vendor that has not been contaminated with customer-specific license information. For smaller packages (like WiX), that is often a single setup executable. For larger packages (e.g. Office or Visual Studio), it MUST take the form of an ISO file. Send me my product key separately, thank you. I recently bought a copy of Office 2010 Pro online. The setup was provided in a self-extracting EXE with the product key already embedded in it. I specifically sought out the option to order a backup DVD - especially because I wanted a perfect, unmodified image of MS Office that wasn't contaminated with customer-specific information, and didn't require a self-extractor. Why can't they just provide the ISO for download after I buy the software? Beats me. Heck, why don't they just put the Office ISO available for public download on the web site? With Office Product Activation, there's really no reason why not - the ISO would install a trial version until you activate it... I really don't want to see Visual Studio go down the path Office has taken with distribution. I was happy with the way WiX 3.0 was distributed: full MSI file, full binary archive, and source code archive. Please keep those options, it was perfect. :) No need to mess with funny distribution methods like MS Office, Adobe, etc. do. More ranting: web setups have been one of my biggest annoyances in setup for the past several years. Call me old-fashioned, but when the vendor then makes it difficult to find a direct link to an offline installer to bypass the web install junk, I then start getting irate. Requiring me to run with some /layout option instead of providing a complete, offline image definitely falls under the category of getting me irate. (What if I don't run it perfectly and get a perfect, definitive image of everything needed for an offline distribution?) A downloader that installs itself onto my computer (separate from the software being installed, and requiring me to later remove it using Add/Remove Programs) is another highly offensive behavior. Making me install ActiveX controls is another way. So at the end of the day, there would have better be an offline installer ready for one-click download. Oftentimes, the built-in downloader in my web browser provides a better, consistent experience (e.g. pause/resume, and better handling if the connection drops) - and it doesn't leave behind additional unwanted cruft on my computer. I realize Burn might not offend in all these different ways - but with every software vendor doing their own thing, it is better for me to not waste my time, and just get the offline installer. -Original Message- From: Christopher Painter [mailto:chr...@iswix.com] Sent: Monday, March 05, 2012 15:49 To: Rob Mensching; General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Wow! Rob, Regarding /layout, all developers *SHOULD* be doing it despite losing those savings. (Assuming any savings is actually realized based on how many developers are installing the software. ) Anyone involved in the process of developing software ( especially build and release engineering ) should have mature policies regarding the ability to track and archive changes to the development environment.If I have to rebuild a build machine or developer machine I have to be able go back and reinstall all of the tools exactly the way they were originally intended. Relying on content for a web-enabled installer to be available 1,5,10 years down the road ( we still get requests to rebuild VB6 applications! ) is a horrible practice as the external dependency is outside of your control. You must keep your own archive of the tool to ensure the SLA can b met. Everyone who understands CM should be
[WiX-users] Mouseover
I was wondering if there was any way to have text show up when a user hover's over a checkbox? For example let's say that someone has a few checkboxes that they can select from that would allow them to install separate products (FeatureX, FeatureY, FeatureZ). I want to be able to have the use hover over the checkbox for FeatureX and have a more in-depth description of what FeatureX does appear next to the checkbox. If anyone has any insight on this subject could let please let me know, thank you in advance for your time and help. -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Mouseover
That works as far as a hover over event is concerned thanks! Now a more difficult concept... is there a way to make it so that the ToolTip attribute can reference another control, say a text control? -Original Message- From: Chad Petersen [mailto:chad.peter...@harlandfs.com] Sent: Monday, March 05, 2012 3:59 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Mouseover Check out the ToolTip attribute of the Control element. Should do exactly what you are looking for. At least that is how I use it. -Original Message- From: James DellaRosa [mailto:jdellar...@aspexcorp.com] Sent: Monday, March 05, 2012 12:35 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Mouseover I was wondering if there was any way to have text show up when a user hover's over a checkbox? For example let's say that someone has a few checkboxes that they can select from that would allow them to install separate products (FeatureX, FeatureY, FeatureZ). I want to be able to have the use hover over the checkbox for FeatureX and have a more in-depth description of what FeatureX does appear next to the checkbox. If anyone has any insight on this subject could let please let me know, thank you in advance for your time and help. -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Uninstallation
Hello, I have been trying, for about two days not, to get my product to use the same .msi to install and uninstall. I have am using separate .wxs files for all of my custom dialogs and then have one .wxs that I reference from my main Product.wxs to reference the rest (not user if I explained that too well or not). I am not sure what else to do here...any ideas? -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Uninstallation
It is from my understanding that when someone creates their own custom dialogs that they are extending (so to speak) the WixUI_InstallDir. That being said the .msi that is used to install my application should also be able to uninstall that same application. However whenever I click on it to uninstall it just runs the installer again. There is no error message, and the program continues through the installation fully (i.e. it overwrites everything). I guess my question here is, is there something I missed? Am I supposed to make a call to an uninstall method like the following? InstallExecuteSequence RemoveExistingProducts Before=InstallInitialize/ /InstallExecuteSequence Also embarrassingly enough I am not sure how to access the verbose installer logs... -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Uninstallation
Thank you for telling me how to get to the verbose log file, I found out what I was doing wrong without it though. Turns out I was not calling the modified WixUI, instead I was just starting right with the custom forms. Thank you for the responses though :-) -Original Message- From: Castro, Edwin G. (Hillsboro) [mailto:edwin.cas...@fiserv.com] Sent: Tuesday, February 28, 2012 2:52 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Uninstallation You have a few options for generating a verbose log file. See http://msdn.microsoft.com/en-us/library/windows/desktop/aa370536.aspx Probably the easiest way to generate a verbose log file at *install-time* is to do it on the command line: msiexec /i path\to\package.msi /l*v path\to\install.log To generate a verbose log file at *uninstall-time it would probably be easiest to do it on the command line as well: msiexec /x path\to\package.msi /l*v path\to\uninstall.log Sounds like you want to focus on which actions are selected to execute during uninstall. Since you have customized the UI dialogs, you might want to start there. Edwin G. Castro Software Developer - Staff Digital Channels Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com P Please consider the environment before printing this e-mail -Original Message- From: DellaRosa, James [mailto:jdellar...@aspexcorp.com] Sent: Tuesday, February 28, 2012 11:00 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Uninstallation It is from my understanding that when someone creates their own custom dialogs that they are extending (so to speak) the WixUI_InstallDir. That being said the .msi that is used to install my application should also be able to uninstall that same application. However whenever I click on it to uninstall it just runs the installer again. There is no error message, and the program continues through the installation fully (i.e. it overwrites everything). I guess my question here is, is there something I missed? Am I supposed to make a call to an uninstall method like the following? InstallExecuteSequence RemoveExistingProducts Before=InstallInitialize/ /InstallExecuteSequence Also embarrassingly enough I am not sure how to access the verbose installer logs... -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Checkbox Selections In an Installer
Hello, I am newer to Wix so please excuse my lack of complete understanding as to how it works, I am still self-educating myself on this wondrous tool. My question seems simple enough but from my research I have learned that it is not. I am creating a standalone installer for an application with a few Parent Features and each of those have some Sub-features. I am trying to create a form that will allow the use to select a Parent Feature by means of a check box, and list all features that will be installed (including the sub-features) in a list or group box to the right. I seem to be having an issue doing so, I have search online for tutorials or examples but have only managed to come across the means to create a desktop shortcut that is installed when the checkbox is selected. I managed to get that to work, but when I try to apply that same underlying concept to the features I come up blank. I guess my question is can someone point me in the right direction to at least gather the information needed to accomplish what it is I am trying to do. I hope this is descriptive enough, but if it is not please ask and I will try and explain further as best I can. Thank you in advance for your time. -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] ERROR1603
http://robmensching.com/blog/posts/2010/8/2/The-first-thing-I-do-with-an-MSI-log Thanks Rob, probably the most useful piece of info I've heard regarding MSI's. I knew about the logs but not value 3. Cheers, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] difx extension and perMachine installs
You may have signed with your self-signed certificate, and you may even have added it to some random place in the certificate store, but your driver isn't WHQL signed. Please review these topics, depending on what your operating system is: http://msdn.microsoft.com/en-us/library/ff543654(VS.85).aspx Specifically, they state the following regarding quiet installation (which you are trying to do by turning off Legacy): * Windows Vista/7 quiet install of Authenticode-signed non-WHQL driver: If the certificate that was used to sign the driver package is not installed in the user's certificate stores [Trusted Publishers I believe] before the installation, the installation will fail. To be precise, even if you sign your driver with Authenticode with VeriSign / trusted root CA, you can't install it quietly on a fresh copy of Windows because it's not WHQL-class and your certificate isn't in Trusted Publishers. Only WHQL-class, Authenticode-signed drivers can be installed quietly on a clean copy of Windows. * Windows XP quiet install of Authenticode-signed non-WHQL driver: Because of a limitation in Windows XP and Windows 2000, the DIFx tools cannot perform a quiet installation of PnP function drivers. Have you even tried turning on the Legacy option? I bet you'll still get some warnings that you have to click through when you turn Legacy on. Just try it and see what happens! The thing to do is probably just turn Legacy on for development. Once you have your driver WHQL signed, turn it off. Maybe you can get around this on Windows Vista by adding your self-signed cert to both trusted root CAs and trusted publishers, I don't know. Never bothered to try. The only real solution that works is something WHQL-signed, and I believe the Authenticode signature has to come from VeriSign. Then you can turn Legacy off and it will work on Windows 2000 and up. Your original e-mail that stated you got the TRUST_E_NOSIGNATURE error makes it pretty obvious what the problem is - you don't have a valid signature for some reason. Turn on Legacy mode, and the resulting prompts may give you some clues as to what is going on. Regarding per-user vs. per-machine: I don't really see how it's possible to do per-user when a driver is installed. I set my install (which includes drivers) to be per-machine only to avoid confusion. James -Original Message- From: Peter Hull [mailto:peterhul...@hotmail.com] Sent: Tuesday, January 17, 2012 22:17 To: WiX Users Subject: Re: [WiX-users] difx extension and perMachine installs If the driver is not signed, and you say it is not, then you need the Legacy option. I did say that; what I meant was not signed with a certificate from a CA. It is self-signed at the moment. Apologies for the confusion. I'd still like to hear if anyone has any comments on a per-user install which includes a device driver - is it always better to do it per-machine. Pete -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] difx extension and perMachine installs
The driver will be signed for production; it just isn't at the moment It doesn't matter what will eventually be done. What matters is that your driver is not currently signed. The Legacy option / Windows can't see into the future and know that you're eventually going to sign it. I shouldn't need the Legacy option If the driver is not signed, and you say it is not, then you need the Legacy option. Even if you eventually plan to sign it. You'll just want to remember to turn Legacy back off when you eventually do sign the driver. James -Original Message- From: Peter Hull [mailto:peterhul...@hotmail.com] Sent: Monday, January 16, 2012 22:21 To: WiX Users Subject: Re: [WiX-users] difx extension and perMachine installs Thanks James, good point. The driver will be signed for production; it just isn't at the moment. I shouldn't need the Legacy option. I've been mulling over perUser vs. perMachine installs and my conclusion is that there's no point in a per-user install because the user would need to be an admin anyway (or be elevated) to install the driver. So I was a bit surprised when my per-machine installer failed but I _think_ it's because of where I put my self-signed certificate (in the user store, not the machine store) - I just want to be sure that I'm not missing something and the install won't fail in the field, and you guys are the experts! ThanksPete From: johnst...@inn-soft.com To: wix-users@lists.sourceforge.net Date: Mon, 16 Jan 2012 19:29:41 + Subject: Re: [WiX-users] difx extension and perMachine installs Did you remember to set the Legacy attribute to yes on your Driver element? See http://wix.sourceforge.net/manual-wix3/difxapp_xsd_driver.htm for more info. Specifically: Legacy YesNoType If set to yes, configures DIFxApp to install unsigned driver packages and driver packages with missing files Also see http://msdn.microsoft.com/en-us/library/ff547653(VS.85).aspx for more info on what legacy mode is. James -Original Message- From: Peter Hull [mailto:peterhul...@hotmail.com] Sent: Monday, January 16, 2012 14:59 To: WiX Users Subject: [WiX-users] difx extension and perMachine installs I am building an installer with a device driver, to be installed with the WiX difx extension. The driver is self-signed for testing purposes. I set my Package element to Package Description=... InstallerVersion=200 InstallScope=perUser Compressed=yes InstallPrivileges=elevated / and everything seemed fine. However I reasoned that a device driver had better be perMachine so I changed the InstallScope to perMachine. Now the installer fails and rolls back. Looking at the logs it is difx, returning error TRUST_E_NOSIGNATURE. My questions: 1. Does WiX handle the case where a perUser install has a device driver (as long as InstallPrivileges is elevated)? 2. Am I correct in saying that the problem is my self-signed certificate - it's trusted by 'me' but for a perMachine install it is no longer trusted? Thanks in advance, Pete -- -- -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists
[WiX-users] Cab File
Hi All, I have a large set of files to distribute with our installer (1100 files) and I was hoping to be able to do this with a zip file but that doesn't seem possible (nor a good idea) so I was wondering if it was possible to use a cab file instead? I'm wondering if the Cab will also be able to maintain the directory structure? Regards, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Cab File
Hi Peter, Not sure I understand. I already have a default cab file for our application declared like: Media Id=1 Cabinet=app.cab EmbedCab=yes CompressionLevel=high / This currently contains all the application files for our file defined by hand inside Component declarations within the script. The problem I'm trying to solve is that I have another 'sub app' that will be installed with our application in the form of a set of files the problem is there are actually over 2000 files and 650+ directories and I really don't want to type that lot in (nor maintain it ...) so I was originally looking at including a zip and running an unzip during the install process. Seeing how problematic that is I started looking at using a cab file. Can a cab maintain the original directory structure automatically on decompressing? Cheers, James -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 16 January 2012 14:20 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Add Compressed=yes to the package element and EmbedCab=yes Cabinet=Product.cab to the media element of your installer and it will compress the files into a cabinet inside it. -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: 16 January 2012 14:14 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Cab File Hi All, I have a large set of files to distribute with our installer (1100 files) and I was hoping to be able to do this with a zip file but that doesn't seem possible (nor a good idea) so I was wondering if it was possible to use a cab file instead? I'm wondering if the Cab will also be able to maintain the directory structure? Regards, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL - - RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Cab File
Thanks sorry. I ALWAYS prefer a WiX solution :) -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 16 January 2012 15:03 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Look at the Wix help regarding the heat tool. That will do the tedious initial script generation for you. Then you can tweak it by hand to maintain the diffs in future versions. If you're not asking for a Wix-based solution then the Wix mailing list isn't really the place to be asking. The cab format is documented on the msdn at http://msdn.microsoft.com/en-us/library/bb417343.aspx I dont see how that's any different from doing it with a zip though. -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: 16 January 2012 14:48 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi Peter, Not sure I understand. I already have a default cab file for our application declared like: Media Id=1 Cabinet=app.cab EmbedCab=yes CompressionLevel=high / This currently contains all the application files for our file defined by hand inside Component declarations within the script. The problem I'm trying to solve is that I have another 'sub app' that will be installed with our application in the form of a set of files the problem is there are actually over 2000 files and 650+ directories and I really don't want to type that lot in (nor maintain it ...) so I was originally looking at including a zip and running an unzip during the install process. Seeing how problematic that is I started looking at using a cab file. Can a cab maintain the original directory structure automatically on decompressing? Cheers, James -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 16 January 2012 14:20 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Add Compressed=yes to the package element and EmbedCab=yes Cabinet=Product.cab to the media element of your installer and it will compress the files into a cabinet inside it. -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: 16 January 2012 14:14 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Cab File Hi All, I have a large set of files to distribute with our installer (1100 files) and I was hoping to be able to do this with a zip file but that doesn't seem possible (nor a good idea) so I was wondering if it was possible to use a cab file instead? I'm wondering if the Cab will also be able to maintain the directory structure? Regards, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL - - RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. - - RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL - - RSA(R
Re: [WiX-users] Cab File
Hi Dan, Yeah, I'm just getting my batch command setup for this. It's building OK as a fragment but I'm can't work out how to incorporate it into the features so that it will actually execute during the install process. James. -Original Message- From: Daniel Madill [mailto:dan.mad...@quanser.com] Sent: 16 January 2012 15:01 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi James, You can use the heat harvesting tool that comes with WiX to generate an initial WxS installer file for your 2000 files and 650+ directories and then add that WxS file to your installer. Dan -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: January-16-12 9:48 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi Peter, Not sure I understand. I already have a default cab file for our application declared like: Media Id=1 Cabinet=app.cab EmbedCab=yes CompressionLevel=high / This currently contains all the application files for our file defined by hand inside Component declarations within the script. The problem I'm trying to solve is that I have another 'sub app' that will be installed with our application in the form of a set of files the problem is there are actually over 2000 files and 650+ directories and I really don't want to type that lot in (nor maintain it ...) so I was originally looking at including a zip and running an unzip during the install process. Seeing how problematic that is I started looking at using a cab file. Can a cab maintain the original directory structure automatically on decompressing? Cheers, James -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 16 January 2012 14:20 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Add Compressed=yes to the package element and EmbedCab=yes Cabinet=Product.cab to the media element of your installer and it will compress the files into a cabinet inside it. -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: 16 January 2012 14:14 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Cab File Hi All, I have a large set of files to distribute with our installer (1100 files) and I was hoping to be able to do this with a zip file but that doesn't seem possible (nor a good idea) so I was wondering if it was possible to use a cab file instead? I'm wondering if the Cab will also be able to maintain the directory structure? Regards, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL - - RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http
Re: [WiX-users] Cab File
Hey Dan, Yeah, I've just gotten all this working, thanks. Just trying to get the file source path all configured and working now ... installer joy! And indeed that would be a drag! james LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Cab File
Hey Again, I'm not sure how to go about getting this working now, I've tried a few things and I just get Undefined veriables erros: I have WixVariable Id=RFileSource Value=..\..\lib\R\R-2.14.1 / in Product.wxs Then I have heat producing a fragment with -cg RInstall -var var.RFileSource But the build fails saying that Undefined preprocessor variable '$(var.RFileSource) How can I reference a variable in the main wxs file without hand editing the generated fragment? Cheers, James -Original Message- From: Daniel Madill [mailto:dan.mad...@quanser.com] Sent: 16 January 2012 16:25 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi James, I haven't used heat for quite a while, but I think you can use the -cg name option to get it to create a ComponentGroup containing all your components and then include that component group in your Feature using a ComponentGroupRef. Otherwise I think you have to use a ComponentRef to refer to each component individually ... and that would clearly be a drag. :-) Dan -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: January-16-12 11:11 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi Dan, Yeah, I'm just getting my batch command setup for this. It's building OK as a fragment but I'm can't work out how to incorporate it into the features so that it will actually execute during the install process. James. -Original Message- From: Daniel Madill [mailto:dan.mad...@quanser.com] Sent: 16 January 2012 15:01 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi James, You can use the heat harvesting tool that comes with WiX to generate an initial WxS installer file for your 2000 files and 650+ directories and then add that WxS file to your installer. Dan -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: January-16-12 9:48 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi Peter, Not sure I understand. I already have a default cab file for our application declared like: Media Id=1 Cabinet=app.cab EmbedCab=yes CompressionLevel=high / This currently contains all the application files for our file defined by hand inside Component declarations within the script. The problem I'm trying to solve is that I have another 'sub app' that will be installed with our application in the form of a set of files the problem is there are actually over 2000 files and 650+ directories and I really don't want to type that lot in (nor maintain it ...) so I was originally looking at including a zip and running an unzip during the install process. Seeing how problematic that is I started looking at using a cab file. Can a cab maintain the original directory structure automatically on decompressing? Cheers, James -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 16 January 2012 14:20 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Add Compressed=yes to the package element and EmbedCab=yes Cabinet=Product.cab to the media element of your installer and it will compress the files into a cabinet inside it. -Original Message- From: James Green [mailto:jgr...@mango-solutions.com] Sent: 16 January 2012 14:14 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Cab File Hi All, I have a large set of files to distribute with our installer (1100 files) and I was hoping to be able to do this with a zip file but that doesn't seem possible (nor a good idea) so I was wondering if it was possible to use a cab file instead? I'm wondering if the Cab will also be able to maintain the directory structure? Regards, James LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL - - RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we
Re: [WiX-users] Cab File
Urgh! That sounds horrendous. That's a significant count of files! -Original Message- From: Daniel Madill [mailto:dan.mad...@quanser.com] Sent: 16 January 2012 16:55 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi James, I have an idea how you were feeling about adding 2000+ files because I had a similar situation with over 12000 files and more than 1000 folders. Glad to hear you got it working! :-) Dan LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Cab File
Hey Dan, Thanks for that, I just read the section on that just after posting to the list. It works fine if I put it in the generated .wxs file but not if I put it in the non-generated Product.wxs file so anytime someone reruns the batch file this key bit of info will get obliterated ... How can I get around this in a repeatable fashion so that the generated fragment is always valid? Cheers, James -Original Message- From: Daniel Madill [mailto:dan.mad...@quanser.com] Sent: 16 January 2012 16:59 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Cab File Hi James, Preprocessor variables and WixVariable's are not the same thing. A preprocessor variable is defined using ?define name=value?. For example: ?define RFileSource=..\..\lib\R\R-2.14.1? Preprocessor variables are handled much like the C preprocessor handles #define macros. Dan LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] difx extension and perMachine installs
Did you remember to set the Legacy attribute to yes on your Driver element? See http://wix.sourceforge.net/manual-wix3/difxapp_xsd_driver.htm for more info. Specifically: Legacy YesNoTypeIf set to yes, configures DIFxApp to install unsigned driver packages and driver packages with missing files Also see http://msdn.microsoft.com/en-us/library/ff547653(VS.85).aspx for more info on what legacy mode is. James -Original Message- From: Peter Hull [mailto:peterhul...@hotmail.com] Sent: Monday, January 16, 2012 14:59 To: WiX Users Subject: [WiX-users] difx extension and perMachine installs I am building an installer with a device driver, to be installed with the WiX difx extension. The driver is self-signed for testing purposes. I set my Package element to Package Description=... InstallerVersion=200 InstallScope=perUser Compressed=yes InstallPrivileges=elevated / and everything seemed fine. However I reasoned that a device driver had better be perMachine so I changed the InstallScope to perMachine. Now the installer fails and rolls back. Looking at the logs it is difx, returning error TRUST_E_NOSIGNATURE. My questions: 1. Does WiX handle the case where a perUser install has a device driver (as long as InstallPrivileges is elevated)? 2. Am I correct in saying that the problem is my self-signed certificate - it's trusted by 'me' but for a perMachine install it is no longer trusted? Thanks in advance, Pete -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] My First Bundle! :)
Hi, Thanks for that Rob. Looked at the logs and solved that particular issue. The only issue I have left now is that the Bundle itself appears in the Add/Remove programs. Is there a way to hide it? Or should I be thinking about hiding the application and use the bundle as the UnInstaller? Jammer -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: 11 January 2012 05:26 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] My First Bundle! :) Take a look at the log file that should be created in your %TEMP% directory. Hopefully that will show how the condition evaluated and explain why uninstall failed. On Tue, Jan 10, 2012 at 12:00 PM, Jammer jam...@jammer.biz wrote: Hi All, I'm creating my first bootstapper installer and I have a few questions. My entire script looks like this: ?xmlversion=1.0encoding=UTF-8? Wixxmlns=http://schemas.microsoft.com/wix/2006/wi; xmlns:util=http://schemas.microsoft.com/wix/UtilExtension; BundleName=MangoSetup Version=1.0.0.0 Manufacturer=Mango-Solutions UpgradeCode=340fe3b1-b98d-42fc-9a15-d1d36ca83922 HelpTelephone=+44 (0)1249 767700 HelpUrl=http://www.mango-solutions.com; Compressed=yes BootstrapperApplicationRefId=WixStandardBootstrapperApplication.RtfL icense/ util:RegistrySearchId=FindDotNet40ClientInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Value=Install Variable=DotNetFramework40ClientInstallRegValue/ util:RegistrySearchId=FindDotNet40FullInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Value=Install Variable=DotNetFramework40FullInstallRegValue/ Chain ExePackageVital=no InstallCondition=NOT FindDotNet40ClientInstallRegValue Id=DOTNET4CP SourceFile=..\..\lib\net_client_profile\dotNetFx40_Client_x86_x64.exe / MsiPackageVital=yes Id=MANGOANALYSE SourceFile=..\Build\Mango.Analyse.Installer.msi/ /Chain /Bundle /Wix Even though I have a conditional set on the client profile exe it always runs this package. As far as I can tell this is correct syntax. I also just noticed that in the Add/Remove Programs under winXP SP3 I ended up with .NET 4.0 client profile installed, the Mango.Analyse application AND an entry for this boot strapper ... when I tried to uninstall the bootstrapper it just gave an error saying that it couldn't proceed ... Would appreciate any pointers as I don't seem to be able to find much documentation for this task. -- *Jammer* WWW.JAMMER.BIZ http://www.jammer.biz TWITTER http://twitter.com/findjammer LINKEDIN http://uk.linkedin.com/in/findjammer** -- Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorised use of the information contained in this message is prohibited. Mango Business Solutions Limited is registered in England under No. 4560258 with its registered office at Suite 3, Middlesex House, Rutherford Close, Stevenage, Herts, SG1 2EF, UK. PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS EMAIL -- Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] My First Bundle! :)
Hi Again, I spoke too soon. I've confirmed that .NET 4.0 isn't installed on the machine. My Bundle has an install condition of: FindDotNet40ClientInstallRegValue = 0 Which is a RegistrySearch: util:RegistrySearch Id=FindDotNet40ClientInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Value=Install Variable=DotNetFramework40ClientInstallRegValue / [011C:0408][2012-01-11T09:44:42]: Condition 'FindDotNet40ClientInstallRegValue = 0' evaluates to false. Which according to the log evaluated to false, I'm obviously terribly mistaken but I would assume that if the key isn't present it would evaluate to 0 meaning that FindDotNet40ClientInstallRegValue = 0 would evaluate to true and install .net on the machine. [011C:0408][2012-01-11T09:44:40]: Registry key not found. Key = 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client' [011C:0408][2012-01-11T09:44:40]: Registry key not found. Key = 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' Then the entire packaged failed to install anything subsequently. [011C:0408][2012-01-11T09:44:46]: Error 0x80070643: Failed to execute apply. -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: 11 January 2012 05:26 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] My First Bundle! :) Take a look at the log file that should be created in your %TEMP% directory. Hopefully that will show how the condition evaluated and explain why uninstall failed. On Tue, Jan 10, 2012 at 12:00 PM, Jammer jam...@jammer.biz wrote: Hi All, I'm creating my first bootstapper installer and I have a few questions. My entire script looks like this: ?xmlversion=1.0encoding=UTF-8? Wixxmlns=http://schemas.microsoft.com/wix/2006/wi; xmlns:util=http://schemas.microsoft.com/wix/UtilExtension; BundleName=MangoSetup Version=1.0.0.0 Manufacturer=Mango-Solutions UpgradeCode=340fe3b1-b98d-42fc-9a15-d1d36ca83922 HelpTelephone=+44 (0)1249 767700 HelpUrl=http://www.mango-solutions.com; Compressed=yes BootstrapperApplicationRefId=WixStandardBootstrapperApplication.RtfL icense/ util:RegistrySearchId=FindDotNet40ClientInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Value=Install Variable=DotNetFramework40ClientInstallRegValue/ util:RegistrySearchId=FindDotNet40FullInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Value=Install Variable=DotNetFramework40FullInstallRegValue/ Chain ExePackageVital=no InstallCondition=NOT FindDotNet40ClientInstallRegValue Id=DOTNET4CP SourceFile=..\..\lib\net_client_profile\dotNetFx40_Client_x86_x64.exe / MsiPackageVital=yes Id=MANGOANALYSE SourceFile=..\Build\Mango.Analyse.Installer.msi/ /Chain /Bundle /Wix Even though I have a conditional set on the client profile exe it always runs this package. As far as I can tell this is correct syntax. I also just noticed that in the Add/Remove Programs under winXP SP3 I ended up with .NET 4.0 client profile installed, the Mango.Analyse application AND an entry for this boot strapper ... when I tried to uninstall the bootstrapper it just gave an error saying that it couldn't proceed ... Would appreciate any pointers as I don't seem to be able to find much documentation for this task. -- *Jammer* WWW.JAMMER.BIZ http://www.jammer.biz TWITTER http://twitter.com/findjammer LINKEDIN http://uk.linkedin.com/in/findjammer** -- Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users LEGAL NOTICE This message is intended for the use of the named recipient(s) only and may contain confidential and / or privileged information. If you are not the intended recipient, please contact the sender and
Re: [WiX-users] My First Bundle! :)
Hi Rob, yeah I noticed I was using the Id rather than the variable name just after posting this and that worked. Just a bit confusing since sometimes you need to reference things by ID and sometimes by variable name. I'm using the latest 3.6 Beta build of WiX. -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: 11 January 2012 15:50 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] My First Bundle! :) Can you try chaning your condition to NOT FindDotNet40ClientInstallRegValue and let's see if that works. I agree this should work, I'm a little surprised it doesn't. What version of WIX toolset are you using? On Wed, Jan 11, 2012 at 2:00 AM, James Green jgr...@mango-solutions.comwrote: Hi Again, I spoke too soon. I've confirmed that .NET 4.0 isn't installed on the machine. My Bundle has an install condition of: FindDotNet40ClientInstallRegValue = 0 Which is a RegistrySearch: util:RegistrySearch Id=FindDotNet40ClientInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Value=Install Variable=DotNetFramework40ClientInstallRegValue / [011C:0408][2012-01-11T09:44:42]: Condition 'FindDotNet40ClientInstallRegValue = 0' evaluates to false. Which according to the log evaluated to false, I'm obviously terribly mistaken but I would assume that if the key isn't present it would evaluate to 0 meaning that FindDotNet40ClientInstallRegValue = 0 would evaluate to true and install .net on the machine. [011C:0408][2012-01-11T09:44:40]: Registry key not found. Key = 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client' [011C:0408][2012-01-11T09:44:40]: Registry key not found. Key = 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' Then the entire packaged failed to install anything subsequently. [011C:0408][2012-01-11T09:44:46]: Error 0x80070643: Failed to execute apply. -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: 11 January 2012 05:26 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] My First Bundle! :) Take a look at the log file that should be created in your %TEMP% directory. Hopefully that will show how the condition evaluated and explain why uninstall failed. On Tue, Jan 10, 2012 at 12:00 PM, Jammer jam...@jammer.biz wrote: Hi All, I'm creating my first bootstapper installer and I have a few questions. My entire script looks like this: ?xmlversion=1.0encoding=UTF-8? Wixxmlns=http://schemas.microsoft.com/wix/2006/wi; xmlns:util=http://schemas.microsoft.com/wix/UtilExtension; BundleName=MangoSetup Version=1.0.0.0 Manufacturer=Mango-Solutions UpgradeCode=340fe3b1-b98d-42fc-9a15-d1d36ca83922 HelpTelephone=+44 (0)1249 767700 HelpUrl=http://www.mango-solutions.com; Compressed=yes BootstrapperApplicationRefId=WixStandardBootstrapperApplication.Rt fL icense/ util:RegistrySearchId=FindDotNet40ClientInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client Value=Install Variable=DotNetFramework40ClientInstallRegValue/ util:RegistrySearchId=FindDotNet40FullInstallRegValue Root=HKLM Key=SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full Value=Install Variable=DotNetFramework40FullInstallRegValue/ Chain ExePackageVital=no InstallCondition=NOT FindDotNet40ClientInstallRegValue Id=DOTNET4CP SourceFile=..\..\lib\net_client_profile\dotNetFx40_Client_x86_x64.e xe / MsiPackageVital=yes Id=MANGOANALYSE SourceFile=..\Build\Mango.Analyse.Installer.msi/ /Chain /Bundle /Wix Even though I have a conditional set on the client profile exe it always runs this package. As far as I can tell this is correct syntax. I also just noticed that in the Add/Remove Programs under winXP SP3 I ended up with .NET 4.0 client profile installed, the Mango.Analyse application AND an entry for this boot strapper ... when I tried to uninstall the bootstrapper it just gave an error saying that it couldn't proceed ... Would appreciate any pointers as I don't seem to be able to find much documentation for this task. -- *Jammer* WWW.JAMMER.BIZ http://www.jammer.biz TWITTER http://twitter.com/findjammer LINKEDIN http://uk.linkedin.com/in/findjammer** -- Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix
[WiX-users] Problem using iis:MimeMap
Hello, I was trying to add a fews MimeMaphttp://wix.sourceforge.net/manual-wix3/iis_xsd_mimemap.htmelements under a website. Upon trying to figure out why my new MIME types were not added I ran across a stackoverflow questionhttp://stackoverflow.com/questions/1751572/adding-mimemap-via-wix-failedthat says that MimeMap does not work under a WebSite http://wix.sourceforge.net/manual-wix3/iis_xsd_website.htmparent even though it's shown in the WiX schema. I was wondering if this is still an issue? Thanks, Randolph -- EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Identifying Features that have been installed
You could always use the COM library if you're not comfortable with the C API calls. Add a COM reference to Microsoft Windows Installer Object Library to your project... Installer.get_Features and Installer.get_FeatureState look like they might be useful. -Original Message- From: Anil Patel [mailto:apatel...@googlemail.com] Sent: Thursday, August 25, 2011 11:12 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Identifying Features that have been installed Hi Peter, Really appreciate your feedback on this. The MsiGetEnumsFeatues() is defined as UINT MsiEnumFeatures( __in LPCTSTR szProduct, __in DWORD iFeatureIndex, __out LPTSTR lpFeatureBuf, __out LPTSTR lpParentBuf ); So to get the product code, I found this code [DllImport(msi, CharSet = CharSet.Auto)] static extern int MsiGetProductCode(string component, StringBuilder buffer); public static string GetProductCode(string component) { StringBuilder productCodeStringBuilder = new StringBuilder(512); switch (MsiGetProductCode(component, productCodeStringBuilder)) { case ERROR_SUCCESS: return productCodeStringBuilder.ToString(); // *Please* don't actually just throw an exception like this. // Throw the relevent exception based on the error code returned. case ERROR_BAD_CONFIGURATION: throw new Exception(The configuration data is corrupt.); case ERROR_INSTALL_FAILURE: throw new Exception(The product code could not be determined.); case ERROR_INVALID_PARAMETER: throw new Exception(An invalid parameter was passed to the function.); case ERROR_UNKNOWN_COMPONENT: throw new Exception(The specified component is unknown.); default: throw new Exception(); } } The problem is thay symbolic constants in the switch statement (eg ERROR_INVALID_PARAMETER which are uints) aren't recognised so error on compile. Do you know how I can resolve these. I'm assuming there might be an Enum for them but I can't locate them. Again any help would be appreciated. Regards, Anil. On Thu, Aug 25, 2011 at 11:13 AM, Peter Shirtcliffe pshirtcli...@sdl.comwrote: MsiEnumFeatures() http://msdn.microsoft.com/en-us/library/aa370098%28v=vs.85%29.aspx -Original Message- From: Anil Patel [mailto:apatel...@googlemail.com] Sent: 25 August 2011 11:08 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Identifying Features that have been installed Hello, I have a configuration program that is run manually by a user (following a new install or a change to an existing installation) which allows the user to configure the installed features. There is a requirement to disable the configuration of features not installed by the user. The question is, is there a way for the configuration program to identify which featues have been installed? I could record this data into the registry during the install and remove it when a feature is uninstalled but I just wondered if there was any other way of doing this. Thank you for your time. Regards, Anil. -- --- - EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. -- EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160%
Re: [WiX-users] WiX Wrappers: For or against?
I second the vote for WixEdit. I used it when first setting up my installer. Helped me learn WiX to some extent. Now that the files are littered with preprocessor commands and I only make small, minor changes, I find it easier to edit the WXS files directly in a text editor. One thing I feel is important is commenting. There are several places where I do things and the reasons for it are not immediately clear. Comments help with that, but you can't edit comments in WixEdit. If I do use WixEdit, I generally go back and add comments to the file as needed. -Original Message- From: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: Monday, August 22, 2011 08:40 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] WiX Wrappers: For or against? I use WixEdit and like it. It's a GUI editor plus a simple wizard and a couple of other features. You can switch into the .wxs file easily using one of the menu items that runs a text editor of your choice and it will detect and reload changes when you switch back. The files it generates can be easily compiled with the command line tools. I find it best for small, quick projects, such as test installers. It was also helpful when I was learning Wix. Our main products' installers are large and complex and I use Wix Votive solutions for those. -Original Message- From: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: 20 August 2011 11:18 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] WiX Wrappers: For or against? Good evening, I've seen quite a few WiX Wrapper around, including a few Open-Source ones. Examples: * http://sourceforge.net/projects/wixedit/ (not 100% sure this is a wrapper) * http://sourceforge.net/projects/keeyai-flame/ What are your thoughts on WiX Wrappers, would you recommend a certain one (not necessarily from above), or would you recommend figuring it out without wrappers? (e.g. just use CLI compilers and Notepad2) Thanks for all suggestions, Alec Taylor - - Get a FREE DOWNLOAD! and learn more about uberSVN rich system, user administration capabilities and model configuration. Take the hassle out of deploying and managing Subversion and the tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users SDL PLC confidential, all rights reserved. If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us. SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207. Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK. -- uberSVN's rich system and user administration capabilities and model configuration take the hassle out of deploying and managing Subversion and the tools developers use with it. Learn more about uberSVN and get a free download at: http://p.sf.net/sfu/wandisco-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- uberSVN's rich system and user administration capabilities and model configuration take the hassle out of deploying and managing Subversion and the tools developers use with it. Learn more about uberSVN and get a free download at: http://p.sf.net/sfu/wandisco-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Registry permissions are not inherited
I replaced Permission with util:PermissionEx in the sample below. Unfortunately, ordinary users are still not allowed to write to MySubKey. An examination of the permissions in Registry Editor shows that entries were added to the existing ACL for MyFile. (i.e. the existing entries were not stepped on like the old Permission element did - a good thing). But they were set to only apply to the current key, and not to subkeys - no inheritance. An examination of the custom action code in secureobj.cpp shows ea.grfInheritance = NO_INHERITANCE if the object is not a folder/directory. Now this is with WiX 3.0 sources but I searched the tracker and apparently somebody else reported the same issue last year with WiX 3.5 and it hasn't been looked at yet: http://sourceforge.net/tracker/index.php?func=detailaid=3029343group_id=10 5970atid=642717 Another similar ticket: https://sourceforge.net/tracker/index.php?func=detailaid=2612975group_id=1 05970atid=642717 And one more: https://sourceforge.net/tracker/index.php?func=detailaid=1241592group_id=1 05970atid=642717 And finally: https://sourceforge.net/tracker/index.php?func=detailaid=2991460group_id=1 05970atid=642714 (all seem to be duplicates) In fact looking at the WiX 3.6 code shows this code is still unmodified and in place. So this explains why I still have issues with util:PermissionEx. It seems to me that the best solution would be to specify inheritance via attribute, just as the tracker suggests. I can't think of a workaround when using util:PermissionEx because subkeys created later by my application will not inherit the Everyone entry and so other users won't be able to read it... So this raises two questions: 1. Any good workaround to get things inheriting properly? 2. Any feedback on the previous feature requests? I notice that an active subscriber actually posted a patch. But this was 3 years ago; it seems it didn't go anywhere? See: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/PermissionEx-e nhancements-wix-Bugs-2127236-2016138-td1303935.html Also see a follow-up: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Chnaged-to-Cod y-Cutrer-s-SecureObjects-enhancements-tt1563118.html I was originally thinking of offering to implement this feature as I would like to see this happen, but after seeing that somebody else already did and nothing really seemed to happen with it - I am not sure if that would be worth my time. (Also I have no idea what is involved with contributing to WiX - I haven't been able to find a web page describing how this process works for WiX - many open source projects have an entire page dedicated to this topic). I am left scratching my head... Is this something that will eventually become part of a future WiX version, or were there reasons for not merging code for the new feature? Or does the code need more work? It would be nice to not have to constantly merge an old patch with every new version of WiX. :) Best regards, James Johnston -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Saturday, August 06, 2011 14:56 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Registry permissions are not inherited That is the behavior of the Windows Installer. Take a look at the WixUtilExtension PermissionEx. On Fri, Aug 5, 2011 at 12:44 PM, James Johnston johnst...@inn-soft.comwrote: Hi, I'm trying to create some default registry keys for a component in HKEY_LOCAL_MACHINE that all users should have full access to. Here's what I've got so far: Component Id=MyFile.dll Guid=* File Id=MyFile.dll KeyPath=yes Source=MyFile.dll / RegistryKey Action=create Key=SOFTWARE\MyCompany Root=HKLM RegistryKey Action=create Key=MyFile Permission User=Everyone GenericAll=yes / Permission User=Administrators GenericAll=yes / RegistryKey Action=create Key=MySubKey RegistryValue Name=MyValue Type=integer Value=1 / /RegistryKey /RegistryKey /RegistryKey /Component The keys I would like created: * HKLM\SOFTWARE\MyCompany: should have default ACL that users cannot write to (inherit from parent) * HKLM\SOFTWARE\MyCompany\MyFile: all users should have read/write access to this key * HKLM\SOFTWARE\MyCompany\MyFile\MySubKey: all users should have read/write access to this key (inherit from parent) Unfortunately, the last key seems to be created with an ACL that only allows administrators to write to the key (same ACL as for the main SOFTWARE key). Intuitively I would think that the RegistryKey underneath the key granting everyone access would also grant everyone access. But that seems not to be the case. Most puzzling is that examining MySubKey in the registry editor shows that the Include inheritable permissions from this object's parent is checked. And creating new keys under MyFile key in registry editor works
[WiX-users] Registry permissions are not inherited
Hi, I'm trying to create some default registry keys for a component in HKEY_LOCAL_MACHINE that all users should have full access to. Here's what I've got so far: Component Id=MyFile.dll Guid=* File Id=MyFile.dll KeyPath=yes Source=MyFile.dll / RegistryKey Action=create Key=SOFTWARE\MyCompany Root=HKLM RegistryKey Action=create Key=MyFile Permission User=Everyone GenericAll=yes / Permission User=Administrators GenericAll=yes / RegistryKey Action=create Key=MySubKey RegistryValue Name=MyValue Type=integer Value=1 / /RegistryKey /RegistryKey /RegistryKey /Component The keys I would like created: * HKLM\SOFTWARE\MyCompany: should have default ACL that users cannot write to (inherit from parent) * HKLM\SOFTWARE\MyCompany\MyFile: all users should have read/write access to this key * HKLM\SOFTWARE\MyCompany\MyFile\MySubKey: all users should have read/write access to this key (inherit from parent) Unfortunately, the last key seems to be created with an ACL that only allows administrators to write to the key (same ACL as for the main SOFTWARE key). Intuitively I would think that the RegistryKey underneath the key granting everyone access would also grant everyone access. But that seems not to be the case. Most puzzling is that examining MySubKey in the registry editor shows that the Include inheritable permissions from this object's parent is checked. And creating new keys under MyFile key in registry editor works just fine when running as a user - so the permissions are inherited. Looking at the ACL entry for Everyone on MyFile key says that the entry applies to this key and subkeys so again, I'm not sure why it isn't working. What do I need to do to achieve my goal of having the Everyone entry propagate to the subkeys created by MSI - as outlined in my list of desired ACLs? I realize I could probably add duplicate Permission elements to the registry values being created. But that doesn't sound very ideal; it seems like there must be a better way! Best regards, James Johnston -- BlackBerryreg; DevCon Americas, Oct. 18-20, San Francisco, CA The must-attend event for mobile developers. Connect with experts. Get tools for creating Super Apps. See the latest technologies. Sessions, hands-on labs, demos much more. Register early save! http://p.sf.net/sfu/rim-blackberry-1 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] CAQuietExec Custom Action DLL excute's out of order
I am using WiX version 3.5.2519.0 If you have a Custom Action DLL and a CAQuietExec Custom Action that needs other Windows Installer properties; set them to execute one after the other, they do not.The CAQuietExec Custom Action that needs other Windows Installer properties executes late in the install process, does not execute in the order specified. Followed: http://wix.sourceforge.net/manual-wix3/qtexec.htm CustomAction Id=QtExecDeferredExampleWithProperty_Cmd Property=QtExecDeferredExampleWithProperty Value=quot;[#MyExecutable.exe]quot; Execute=immediate/ CustomAction Id=QtExecDeferredExampleWithProperty BinaryKey=WixCA DllEntry=CAQuietExec Execute=deferred Return=check Impersonate=no/ . . . InstallExecuteSequence Custom Action=QtExecDeferredExampleWithProperty_Cmd After=CostFinalize/ Custom Action=QtExecDeferredExampleWithProperty After=TheActionYouWantItAfter/ /InstallExecuteSequence This is the type Custom Action (above) that does not execute in the order I specified using the 'After=' attribute. I have even made a simple WXS file, same thing happens, in part: Binary Id=MyCustomAction.dll SourceFile=..\..\CustomAction1\CustomAction1\obj\x86\Release\CustomAction1.CA.dll / CustomAction Id=MyCustomAction1 BinaryKey=MyCustomAction.dll DllEntry=CustomAction1 Execute=deferred / CustomAction Id=MyCustomAction2 BinaryKey=MyCustomAction.dll DllEntry=CustomAction2 Execute=deferred / CustomAction Id=QtExecDeferredExampleWithProperty_Cmd Property=QtExecDeferredExampleWithProperty Value=quot;netquot; Execute=immediate/ CustomAction Id=QtExecDeferredExampleWithProperty BinaryKey=WixCA DllEntry=CAQuietExec Execute=deferred Return=ignore Impersonate=no/ Property Id=QtExecDeferredExample Value=quot;netquot;/ CustomAction Id=QtExecDeferredExample BinaryKey=WixCA DllEntry=CAQuietExec Execute=deferred Return=ignore Impersonate=no/ .. .. .. InstallExecuteSequence Custom Action=QtExecDeferredExampleWithProperty_Cmd After=CostFinalize/ Custom Action='MyCustomAction1' After='InstallFiles' / Custom Action=QtExecDeferredExample After=MyCustomAction1/ Custom Action='MyCustomAction2' After='QtExecDeferredExample' / Custom Action=QtExecDeferredExampleWithProperty After=MyCustomAction2/ /InstallExecuteSequence The Custom Action DLL is a shell that just logs a message. Tried changing deferred to immediate and vica versa for the 'Execute=' attribute, no difference. How can I make these Custom Actions actually execute in order? Thanks, James -- AppSumo Presents a FREE Video for the SourceForge Community by Eric Ries, the creator of the Lean Startup Methodology on Lean Startup Secrets Revealed. This video shows you how to validate your ideas, optimize your ideas and identify your business strategy. http://p.sf.net/sfu/appsumosfdev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFxApp does not properly rollback to the old driverwhen doing a major upgrade
it when customers try to point this out. It's very frustrating to deal with. (Heck... if one of those two products was open source, I would have seriously considered fixing it and submitting a patch...) James -Original Message- From: Rob Hamflett [mailto:r...@snsys.com] Sent: Wednesday, April 27, 2011 08:00 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] DIFxApp does not properly rollback to the old driverwhen doing a major upgrade I emailed difxt...@microsoft.com and received this response. AFAIK, Difx doesn't do anything to explicitly support RemoveExistingProducts. The scenario described on that page would require it to rollback a partial install of a new driver and the previous uninstall of the old driver. The limited functionality in the rollback mechanism of DIFx does not support that. So it looks like there isn't going to be a fix for this. Rob On 11/03/2011 14:00, Rob Hamflett wrote: I appear to be looking at the same problem. I was able to reproduce it by hitting 'cancel' near the end of an uninstall and letting it rollback. After that uninstallation failed. Performing a repair fixed things. Did you email the difx team at the email address Quinton suggested, and if so, did you ever hear anything back. Thanks, Rob On 10/12/2010 20:37, James Johnston wrote: Seeing as how this seems to be a fundamental problem with DIFxApp not handling all the upgrade possibilities well, I was curious to see how other products do things and so I ripped apart some MSIs in Orca. I was looking to see if DIFxApp was set up the same way (CustomAction table). I also inspected the placement of the RemoveExistingProducts action since after my previous e-mail I believe that this plays a critical role in whether this corrupted system state may occur. Since I haven't seen any other indication or documentation on the Internet (a Google search for RemoveExistingProducts and DIFxApp reveals little), I thought it would be useful to report my findings so others can see what some commercial software is doing. My findings: All products using DIFxApp place MsiProcessDrivers and MsiCleanupOnSuccess actions in the normal places. CustomAction types are always the same. I identified the program used to compile the MSI by looking at the self-named custom actions each install tool tends to create (e.g. InstallShield has its own DLL with tons of custom actions). Refer to http://jpassing.com/2007/06/16/where-to-place-removeexistingproducts- in-a-ma jor-msi-upgrade/ to better understand the placement of RemoveExistingProducts action. Examining this table leads me to believe that placement between InstallInitialize and InstallFinalize is the best place, since a canceled setup will always leave the old version on the computer, no matter what. But this doesn't seem to work with DIFxApp due to its bug, as previously noted. My product (with the rollback problem): Compiled with WiX and uses DIFxApp. RemoveExistingProducts is placed after InstallInitialize. According to the previous link, a failure at any time (uninstall or reinstall) results in only the old version remaining: leaving system state exactly as it was found. Unfortunately, as previously noted, a bug in DIFxApp prevents this from happening. Apple Mobile Device Support (included with iTunes; presumably their iPod drivers, etc.). Compiled with WiX and uses DIFxApp. RemoveExistingProducts is placed after InstallFinalize. Probably the DIFxApp bug is not a problem here, because the new version is installed before the old version is uninstalled. An error in the new version setup (from DIFx or other source) would still leave the old version and its drivers untouched. An error in the old version uninstall would leave the new version its drivers untouched. According to the table at the above link, the pitfall is that if the uninstall fails, then BOTH versions of the product remain installed on the computer. This seems like a very inconsistent, illogical state to be in; I can imagine that there could be some issues with a lot of products (including mine) if this were to happen. (Perhaps an MSI expert can convince me otherwise? Otherwise, I wonder if Apple's software can get itself in a bad way if I click Cancel at just the right moment.) Microsoft LifeCam (webcam driver). Don't know what compiled this; I didn't see any obvious indications. It uses DIFxApp. RemoveExistingProducts is placed after InstallInitialize. It therefore appears to be in a very similar configuration as with my product, and I believe it would leave the user's DIFxApp state inconsistent if the upgrade was canceled at just the right moment. It is interesting to note that the MSI file is wrapped by a bootstrapper: the MSI itself throws no UI. The bootstrapper does NOT present the user with a Cancel button. Perhaps this is a reason why? Oracle VirtualBox
Re: [WiX-users] Why are we using a mailing list vs forum?
I guess you could just open a gmail (or whatever) account and subscribe that to this list instead of your office email account. john.bu...@telvent.com wrote: Heh, well I guess. I get annoyed with all the new mail alerts at work. They make us use Lotus Notes, which doesn't easily allow me to filter what emails show as un-read or cause alerts. And with limited mailbox space (ya, we're awesome) it's a bit of a pain to stay subscribed all the time. There isn't a web interface; It's just an archive. So no posting or un-read markers. I think both ways would be compatible (web forum interface and mailing list interface). That'd be kind of neat. - John Jeremy Farrell 05/18/2011 12:47 PM Por favor, responda a General discussion for Windows Installer XML toolset. Send To: General discussion for Windows Installer XML toolset. wix-users@lists.sourceforge.net cc: Subject: Re: [WiX-users] Why are we using a mailing list vs forum? From: john.bu...@telvent.com [mailto:john.bu...@telvent.com] Subject: [WiX-users] Why are we using a mailing list vs forum? Just curious. Because mailing lists are easier and far more convenient to use. I find forums easier to use. :o) ... All down to personal preference. I believe there are web-based interfaces to this list available. -- What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] 32-Bit 64-Bit
Hi, I have an existing installer for a 32-bit application that has been working fine for the last year or so. I am now looking at adding a second installer (users will download the 32-bit or 64-bit installer, I'm not planning on having a single installer decide which version to install) based on the same script that can install a 64-bit version of my application. I have something that almost works, but am stuck on a few things. The current 32-bit installer drops executable files in Program Files (x86) and some common data files in ProgramData. These folders are cleaned up as part of the uninstall procedure as long as they're empty (new files can be added by the user to the ProgramData folder, and these will remain across upgrades). The new 64-bit installer is supposed to drop executable files in Program Files and the same data files in Program Data. The existing installer always uninstalls any previous version before installing the new one (so users can downgrade if I screw up) and I am trying to make the 64-bit version function in the same way. Ideally the installer will treat any existing install 32-bit or 64-bit in the same say regardless of their actual install paths, I.e., providing the version number is different, the previously installed version will be uninstalled before the new version is installed. From what I can see, installing and uninstalling a 64-bit version on a clean machine works. I am going to go one step further and assume that upgrading 64-bit to 64-bit also works. The problems I have are as follows: 1) When I install the 64-bit version when a 32-bit installation is already present, the 32-bit version isn't uninstalled. So while the 64-bit version is installed in Program Files there is no shortcut to it, nor is there any way to uninstall it (the 32-bit version is still listed in Programs and Features). 2) When I install the 32-bit version when a 64-bit installation is already present, the 64-bit version is not correctly removed, but the start menu shortcut and uninstall link in Programs and Features now reference the 32-bit version. So, how is this scenario supposed to be implemented? Are there any decent tutorials or references on how to implement this upgrade scenario correctly? The current installer script as it stands can be viewed here: http://www.osodata.com/stuff/Product.wxs James -- WhatsUp Gold - Download Free Network Management Software The most intuitive, comprehensive, and cost-effective network management toolset available today. Delivers lowest initial acquisition cost and overall TCO of any competing solution. http://p.sf.net/sfu/whatsupgold-sd ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Windows 7 MSI privileges
A list of reasons why not to use selfreg: http://msdn.microsoft.com/en-us/library/aa371608(VS.85).aspx -Original Message- From: Pally Sandher [mailto:pally.sand...@iesve.com] Sent: Thursday, March 17, 2011 10:46 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Windows 7 MSI privileges If you want to do what is right you could start by not using self-registration. Palbinder Sandher Software Deployment Engineer 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: The Eligible Bachelors [mailto:theeligiblebachel...@yahoo.com] Sent: 16 March 2011 13:02 To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Windows 7 MSI privileges Great. I added Execute=deferred and Impersonate=no to my custom actions and it seemed to fix the problem. I certainly dont want to go against UAC. I want to do what is right, whatever that may be, so thanks for the help. You need Execute=deferred custom actions with Impersonate=no. This will allow your custom actions, and subsequent child processes that they create, to inherit the local system privileges of the Windows Installer service. -- Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Problem with RemoveExistingProducts action
I would actually consider that desirable behavior in my product, since version 2.1 was designed and tested with bbb.dll version 1.0 - not version 1.5. What's happening is the removal of product 2.0 causes the reference count on component bbb.dll to go to zero, and so MSI deletes the file. Then the new version installs a fresh copy of bbb.dll version 1.0. If you want to retain the behavior you describe, then you would need to test product version 2.1 with both bbb.dll versions 1.5 and 1.0. Version 1.5 would occur when the user upgrades and version 1.0 would occur on a clean install of product 2.1. If at all possible, I like to just to put the DLLs alongside your application in the application directory, and not put them in a shared place like the Windows System32 directory - this is easier since you only have to test one configuration instead of two. This tends to be a recommended way of doing things to avoid DLL Hell. That said, sometimes 3rd-party components have prescribed ways of installation and there's nothing you can do about it. And maybe there are some reasons for keeping the bbb.dll file around. For example, you might have bbb.dll as a 3rd-party component in the SYSTEM32 directory. In that case I would set the Permanent and SharedDllRefCount attributes both to yes. Permanent will add an extra reference to the component during installation, so that it doesn't get deleted on uninstall (or therefore an upgrade). SharedDllRefCount deals with maintaining a similar, older-style reference counting scheme for non-Windows Installer installers so that some other non-MSI installer doesn't wipe your DLL from underneath you. James -Original Message- From: Igor Lemsky [mailto:igor.lem...@gmail.com] Sent: Friday, February 25, 2011 04:57 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Problem with RemoveExistingProducts action It seems that I dont break component rules... I just add new component into existing feature and trying to upgrade. Besides I put it after InstallInitialize, but now take another problem. If some of dlls will have lower version - it deleted during upgrade. If product version 2.0 have bbb.dll version 1.5, and product version 2.1 have dll version 1.0 - it just erase it during upgrade! As I understand it must leave bbb.dll version 1.5... On Tue, Feb 22, 2011 at 9:13 PM, James Johnston johnst...@inn-soft.comwrote: In that case you have to be following component rules. See http://www.joyofsetup.com/2008/12/30/paying-for-upgrades/ Also with your placement, if the old version fails to uninstall then the user will have both old new versions installed - something to keep in mind. Try putting it after InstallInitialize. The old version will be uninstalled first before anything new is installed. If the install of the new product fails then the rollback will restore the old version. If you use DIFxApp for driver installs then it needs to be put between InstallValidate and InstallInitialize due to a bug in DIFxApp. In that case a failed install of the new product but after the successful uninstall of the old product will leave the computer with no product installed at all. I think that must be a good place to put it if there are buggy custom actions and component rules aren't being well-followed. James -Original Message- From: Igor Lemsky [mailto:igor.lem...@gmail.com] Sent: Tuesday, February 22, 2011 06:04 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Problem with RemoveExistingProducts action I have upgrade scenario for my system from 2.0 version to 2.1 version. I have file for example aaa.xml in 2.1 version and no such file in 2.0 version. It lies in independent component i feature Afeature (it was in 2.0 also). During install there are no problems: file installs to the right location. But during upgrade from 2.0 version it copies and then deleted. It seems that RemoveExistingProducts deletes it during uninstall of older 2.0 product. It planned after InstallFinalize action (the most right place as I understand). Due to the log Installer unpublish features and the delete files... MSI (s) (DC:B8) [11:54:05:148]: Executing op: FileRemove(,FileName=aaa.xml,,ComponentId={369A88EA-F2DD-4124-9560-13E 5694E2 EEB}) RemoveFiles: File: aaa.xml, folder: C:\Mag\ I dont understand - what happened? Why it deletes files? May be I didnt configured installer correctly? But how? -- -- -- Index, Search Analyze Logs and other IT data in Real-Time with Splunk Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. Free Software Download: http://p.sf.net/sfu/splunk-dev2dev
Re: [WiX-users] Problem with RemoveExistingProducts action
In that case you have to be following component rules. See http://www.joyofsetup.com/2008/12/30/paying-for-upgrades/ Also with your placement, if the old version fails to uninstall then the user will have both old new versions installed - something to keep in mind. Try putting it after InstallInitialize. The old version will be uninstalled first before anything new is installed. If the install of the new product fails then the rollback will restore the old version. If you use DIFxApp for driver installs then it needs to be put between InstallValidate and InstallInitialize due to a bug in DIFxApp. In that case a failed install of the new product but after the successful uninstall of the old product will leave the computer with no product installed at all. I think that must be a good place to put it if there are buggy custom actions and component rules aren't being well-followed. James -Original Message- From: Igor Lemsky [mailto:igor.lem...@gmail.com] Sent: Tuesday, February 22, 2011 06:04 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Problem with RemoveExistingProducts action I have upgrade scenario for my system from 2.0 version to 2.1 version. I have file for example aaa.xml in 2.1 version and no such file in 2.0 version. It lies in independent component i feature Afeature (it was in 2.0 also). During install there are no problems: file installs to the right location. But during upgrade from 2.0 version it copies and then deleted. It seems that RemoveExistingProducts deletes it during uninstall of older 2.0 product. It planned after InstallFinalize action (the most right place as I understand). Due to the log Installer unpublish features and the delete files... MSI (s) (DC:B8) [11:54:05:148]: Executing op: FileRemove(,FileName=aaa.xml,,ComponentId={369A88EA-F2DD-4124-9560-13E5694E2 EEB}) RemoveFiles: File: aaa.xml, folder: C:\Mag\ I dont understand - what happened? Why it deletes files? May be I didnt configured installer correctly? But how? -- Index, Search Analyze Logs and other IT data in Real-Time with Splunk Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. Free Software Download: http://p.sf.net/sfu/splunk-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Index, Search Analyze Logs and other IT data in Real-Time with Splunk Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. Free Software Download: http://p.sf.net/sfu/splunk-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] write to IniFile
http://msdn.microsoft.com/en-us/library/aa369282(VS.85).aspx DirProperty Name of a property having a value that resolves to the full path of the folder containing the .ini file. The property can be the name of a directory in the Directory table, a property set by the AppSearch table, or any other property that represents a full path. If this field is left blank, the .ini file is created in the folder having the full path specified by the WindowsFolder property. Unless I'm missing something obvious, shouldn't it be as simple as specifying a value for DirProperty? We do this from WiX in our product with no problems so far... don't really see why a custom action would be needed... -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Monday, February 21, 2011 15:03 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] write to IniFile Yep, annoying, eh? The MSI SDK documents that behavior. Want to contribute a custom action that does better? On Mon, Feb 21, 2011 at 1:04 AM, Michael Tissington michael_tissing...@ciqual.com wrote: I'm trying to write to an iniFile. How do I tell it which folder the file is in? Currently it seems to insist that it is in the \Windows folder. -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Dynamically set WixVariable WixUILicenseRtf
Oh wow... Right now we just change it in our build script when calling light: light parameters -dWixUILicenseRtf=SupportFiles/License_${language}.rtf more parameters Which is also unnecessarily kludgy; that information really should be in the localization file but at the time I didn't figure out how (that blog entry was written after I wrote the setup project...). Your solution is better except that it involves modifying WiX source code. Any chance this might be added to a future version of WiX? This common task seems needlessly complicated. Maybe the change would break compatibility, but on the other hand the status quo of modifying WiX source code doesn't seem any better to me! Unless there is a better way that neither of us know about?? James -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: Friday, February 18, 2011 15:08 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Dynamically set WixVariable WixUILicenseRtf Ok, knew there exists an english speaking tutorial: http://weblogs.sqlteam.com/mladenp/archive/2010/04/15/WiX-3-Tutorial-Custom- EULA-License-and-MSI-localization.aspx 2011/2/18 Tobias S tobias.s1...@gmail.com: You have to overwrite the default WiX dialog e.g. in WixUI_InstallDir with a modified LicenseAgreementDlg.wxs: 1.) get the WiX Source code 2.) from there add copies from src\ext\UIExtension\wixlib\WixUI_InstallDir.wxs + LicenseAgreementDlg.wxs to your solution renamed as MyLicenseAgreementDlg.wxs + MyWixUI_InstallDir.wxs 3.) MyLicenseAgreementDlg.wxs change lines Dialog Id=LicenseAgreementDlg Width=370 Height=270 Title=!(loc.LicenseAgreementDlg_Title) -- Dialog Id=MyLicenseAgreementDlg Width=370 Height=270 Title=!(loc.LicenseAgreementDlg_Title) Control Id=LicenseText Type=ScrollableText X=20 Y=60 Width=330 Height=140 Sunken=yes TabSkip=no Text SourceFile=!(wix.WixUILicenseRtf=$(var.licenseRtf)) / /Control -- Control Id=LicenseText Type=ScrollableText X=20 Y=60 Width=330 Height=140 Sunken=yes TabSkip=no Text SourceFile=!(loc.LicenseRtf) / /Control 4.) WixUI_InstallDir.wxs change line UI Id=WixUI_InstallDir -- UI Id=MyWixUI_InstallDir Replace all four occurences of LicenseAgreementDlg with MyLicenseAgreementDlg 5.) Change in the main wxs the reference to the modified MyWixUI_InstallDir UIRef Id=WixUI_InstallDir/ -- UIRef Id=MyWixUI_InstallDir/ 6.) Add for every language a localization file with at least the following content: ?xml version=1.0 encoding=utf-8? WixLocalization Culture=en-US xmlns=http://schemas.microsoft.com/wix/2006/localization; String Id=Language1033/String String Id=LicenseRtfLanguages\EnglishLicenseAgreement.rtf/String /WixLocalization Here LicenseRtf is the location of the localized License Agreement Regards Tobias 2011/2/18 Michael Tissington michael_tissing...@ciqual.com: How can I dynamically set the value of WixUILicenseRtf? I have tried WixVariable Id=WixUILicenseRtf Value=[PROPERTY_NAME]/ What I'm trying to do is for each localization to use a different license.rtf. -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry
Isn't storing the administrator password for a server in the registry a terrible idea? This is setting off all kinds of alarm bells in my mind... Even if you encrypt it, I would think it would still be easy enough to recover the plaintext just by finding the key in the MSI file and then decrypting. I don't see how it offers any real security beyond shielding from casual prying eyes. I would think an installer that does this without telling could easily trap the unwary system administrator who wants to run a tight ship... -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Wednesday, February 16, 2011 15:35 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry Not today but it would be a great custom action to have. On Tue, Feb 15, 2011 at 2:40 PM, Thai-Hoa Nguyen taiwa...@hotmail.comwrote: Hello I'm currently storing the SQL sa password so the database can be uninstalled later. RegistryValue Root='HKLM' Key='SOFTWARE\xyz\abcName='SQLPwd' Value='[SQLPASSWORD]' Type='string' / Property Id=SQLPASSWORD Value=password RegistrySearch Id='SqlPwdReg' Key='SOFTWARE\xyz\abc' Name='SQLPwd' Root='HKLM' Type='raw'/ /Property Is there a quick and easy way to encrypt and decypt the password in Wix? Thank you. -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry
I think that would depend on whether the SQL Server is located on the same physical computer as the software in question that wants to store an account password. If it's the same computer then you are correct - in fact that thought had already crossed my mind. The one remaining issue I can think of is that the user's password is still compromised in a way that it wouldn't be otherwise. Windows and I'm sure SQL Server uses one-way hash functions so that, even if the password file is stolen, significant effort must be expended to determine what the passwords are if the quality of the passwords is good. If the administrator is using the same password for everything then there could be a problem: it might allow an attacker to further infiltrate the network. If the password was only used for that one account then it's a non-issue. I think that the save password concept really gets scary if the SQL Server is located on a different computer. For example, suppose the app uses the sa password to create the database on a remote server. But for security reasons the app should not use the sa account for day-to-day use, and so the sa password is never used again except for uninstall and is saved in the registry somehow as has been discussed. In that case, if the client computer is compromised, this saved password registry key. I.e. the attacker pulls the hard drive from the client computer, reads the key associated with the SYSTEM context somehow, and then decrypts the password. Now he's gained access to the server that he did not previously have. -Original Message- From: Castro, Edwin G. (Hillsboro) [mailto:edwin.cas...@fiserv.com] Sent: Wednesday, February 16, 2011 18:33 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry That all depends on what key you use to encrypt the data. If the key is associated with the SYSTEM context then only the SYSTEM context will be able to decrypt the data. If an attacker already has access to the SYSTEM context then it's already Game Over. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com P Please consider the environment before printing this e-mail -Original Message- From: James Johnston [mailto:johnst...@inn-soft.com] Sent: Wednesday, February 16, 2011 8:19 AM To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry Isn't storing the administrator password for a server in the registry a terrible idea? This is setting off all kinds of alarm bells in my mind... Even if you encrypt it, I would think it would still be easy enough to recover the plaintext just by finding the key in the MSI file and then decrypting. I don't see how it offers any real security beyond shielding from casual prying eyes. I would think an installer that does this without telling could easily trap the unwary system administrator who wants to run a tight ship... -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Wednesday, February 16, 2011 15:35 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Encrypt and store the SQL sa password in the windows registry Not today but it would be a great custom action to have. On Tue, Feb 15, 2011 at 2:40 PM, Thai-Hoa Nguyen taiwa...@hotmail.comwrote: Hello I'm currently storing the SQL sa password so the database can be uninstalled later. RegistryValue Root='HKLM' Key='SOFTWARE\xyz\abcName='SQLPwd' Value='[SQLPASSWORD]' Type='string' / Property Id=SQLPASSWORD Value=password RegistrySearch Id='SqlPwdReg' Key='SOFTWARE\xyz\abc' Name='SQLPwd' Root='HKLM' Type='raw'/ /Property Is there a quick and easy way to encrypt and decypt the password in Wix? Thank you. -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- -- -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel
Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name.
http://www.advancedinstaller.com/forums/viewtopic.php?f=2t=2820 Maybe there are some issues with the driver package itself? i.e. bad/missing catalog file. Be sure that the driver files is completely installed that all required files are in the appropriate locations. If the driver isn't WHQL signed then you have to set the legacy attribute on the DIFX driver element; otherwise that could maybe be another factor? -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Wednesday, February 09, 2011 14:24 To: wix-users@lists.sourceforge.net Subject: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. Hi! I have this error (WiX 3.6.1321): DIFXAPP: ENTER: InstallDriverPackages() DIFXAPP: INFO: 'CustomActionData' property 'DIFxApp Version' is '2.1'. DIFXAPP: INFO: 'CustomActionData' property 'UI Level' is '5'. DIFXAPP: INFO: 'CustomActionData' property 'componentId' is '{GUID}'. DIFXAPP: INFO: 'CustomActionData' property 'componentPath' is 'C:\PATH1\'. DIFXAPP: INFO: 'CustomActionData' property 'flags' is 0xA. DIFXAPP: INFO: 'CustomActionData' property 'installState' is '2'. DIFXAPP: INFO: 'CustomActionData' property 'ProductName' is '[product_name]'. DIFXAPP: INFO: 'CustomActionData' property 'ManufacturerName' is '[manufacturer_name]'. DIFXAPP: INFO: user SID of user performing the install is 'SID'. DIFXAPP: INFO: opening HKEY_USERS\SID\Software\Microsoft\Windows\CurrentVersion\DIFxApp\Components\ {GUID} (User's SID: 'SID') ... DIFXAPP: INFO: ENTER: DriverPackageInstallW DIFXAPP: ERROR: Failed to calculate strong name. (Error code 0x52: The directory or file cannot be created.) DIFXAPP: INFO: Successfully removed '{GUID}' from reference list of driver store entry '' DIFXAPP: INFO: RETURN: DriverPackageInstallW (0x52) DIFXAPP: ERROR: encountered while installing driver package 'C:\PATH1\driver.inf' DIFXAPP: ERROR: InstallDriverPackages failed with error 0x52 DIFXAPP: RETURN: InstallDriverPackages() 82 (0x52) Any ideas to fix this problem? Thanks! -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name.
Someone more familiar with DIFx might be able to shed some more light here. Your WiX code looks OK to me. If this problem is reproducible on multiple computers then I would blame the driver package. You could also try installing the driver using DPInst and see if that works or not. But I'm suspecting it might have to do with catalogs somehow? There's no catalog file in your list... does the INF file specify an (apparently missing) catalog file? Not sure if you've seen this topic, but you might want to review the topics in this section in MSDN for any potential gotchas: http://msdn.microsoft.com/en-us/library/ff543645(VS.85).aspx -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Thursday, February 10, 2011 16:40 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. Wix code for my driver: Component Id=My_Driver Guid=GUID DiskId=2 File Id=mydrv.sys Name=mydrv.sys / File Id=mydrv.dll Name=mydrv.dll / File Id=mydrv.inf Name=mydrv.inf / difx:Driver Legacy=yes PlugAndPlayPrompt=no/ /Component Driver isn't WHQL signed. And... typical error message for missed cat file is: DIFXAPP: ERROR: Failed to calculate strong name from 'file-path'. This error message doesn't contain file path. Thanks! 10.02.2011 17:39, James Johnston пишет: http://www.advancedinstaller.com/forums/viewtopic.php?f=2t=2820 Maybe there are some issues with the driver package itself? i.e. bad/missing catalog file. Be sure that the driver files is completely installed that all required files are in the appropriate locations. If the driver isn't WHQL signed then you have to set the legacy attribute on the DIFX driver element; otherwise that could maybe be another factor? -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Wednesday, February 09, 2011 14:24 To: wix-users@lists.sourceforge.net Subject: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. Hi! I have this error (WiX 3.6.1321): DIFXAPP: ENTER: InstallDriverPackages() DIFXAPP: INFO: 'CustomActionData' property 'DIFxApp Version' is '2.1'. DIFXAPP: INFO: 'CustomActionData' property 'UI Level' is '5'. DIFXAPP: INFO: 'CustomActionData' property 'componentId' is '{GUID}'. DIFXAPP: INFO: 'CustomActionData' property 'componentPath' is 'C:\PATH1\'. DIFXAPP: INFO: 'CustomActionData' property 'flags' is 0xA. DIFXAPP: INFO: 'CustomActionData' property 'installState' is '2'. DIFXAPP: INFO: 'CustomActionData' property 'ProductName' is '[product_name]'. DIFXAPP: INFO: 'CustomActionData' property 'ManufacturerName' is '[manufacturer_name]'. DIFXAPP: INFO: user SID of user performing the install is 'SID'. DIFXAPP: INFO: opening HKEY_USERS\SID\Software\Microsoft\Windows\CurrentVersion\DIFxApp\Compo nents\ {GUID} (User's SID: 'SID') ... DIFXAPP: INFO: ENTER: DriverPackageInstallW DIFXAPP: ERROR: Failed to calculate strong name. (Error code 0x52: The directory or file cannot be created.) DIFXAPP: INFO: Successfully removed '{GUID}' from reference list of driver store entry '' DIFXAPP: INFO: RETURN: DriverPackageInstallW (0x52) DIFXAPP: ERROR: encountered while installing driver package 'C:\PATH1\driver.inf' DIFXAPP: ERROR: InstallDriverPackages failed with error 0x52 DIFXAPP: RETURN: InstallDriverPackages() 82 (0x52) Any ideas to fix this problem? Thanks! -- -- -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb
Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name.
If it's only one PC and it works fine on other computers of similar configuration (same version of Windows, etc.) then maybe also check some registry entries: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DIFxApp HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DIFx HKCU\Software\Microsoft\Windows\CurrentVersion\DIFxApp If it's a DIFX problem then it might be helpful to uninstall your software and then clean those areas up to remove traces of the drivers, in case there was some problems with corruption in DIFx. Also maybe check into Windows settings and group policy that might be preventing the driver from being installed (especially since it's unsigned). I would also recommend inspecting the SetupAPI log file. Delete any existing log file, configure the system for the desired level of logging, and then run the installer again. The SetupAPI log can give far more detail than DIFx as to why a driver install has failed. Often the MSI log will have a message from DIFx saying in effect, the driver install failed with not much detail. SetupAPI log may be more helpful. Info on setup API logs: Vista/7: http://msdn.microsoft.com/en-us/library/ff550887(VS.85).aspx Windows XP probably 2000: http://msdn.microsoft.com/en-us/library/ff550882(VS.85).aspx http://www.microsoft.com/whdc/archive/setupapilog.mspx http://www.osronline.com/ddkx/install/troubleshoot_9g87.htm My guess is you will discover some unique configuration setting or some corrupted settings/files to that computer that is causing it to fail. This has been my experience so far with DIFx. -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Thursday, February 10, 2011 17:42 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. INF file doesn't specify cat-file (only DLL and SYS). This problem appear for only one PC configuration. Ok, I'll try install this driver using DPInst and I'll read the topic. Thanks a lot. 10.02.2011 18:52, James Johnston пишет: Someone more familiar with DIFx might be able to shed some more light here. Your WiX code looks OK to me. If this problem is reproducible on multiple computers then I would blame the driver package. You could also try installing the driver using DPInst and see if that works or not. But I'm suspecting it might have to do with catalogs somehow? There's no catalog file in your list... does the INF file specify an (apparently missing) catalog file? Not sure if you've seen this topic, but you might want to review the topics in this section in MSDN for any potential gotchas: http://msdn.microsoft.com/en-us/library/ff543645(VS.85).aspx -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Thursday, February 10, 2011 16:40 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. Wix code for my driver: Component Id=My_Driver Guid=GUID DiskId=2 File Id=mydrv.sys Name=mydrv.sys / File Id=mydrv.dll Name=mydrv.dll / File Id=mydrv.inf Name=mydrv.inf / difx:Driver Legacy=yes PlugAndPlayPrompt=no/ /Component Driver isn't WHQL signed. And... typical error message for missed cat file is: DIFXAPP: ERROR: Failed to calculate strong name from 'file-path'. This error message doesn't contain file path. Thanks! 10.02.2011 17:39, James Johnston пишет: http://www.advancedinstaller.com/forums/viewtopic.php?f=2t=2820 Maybe there are some issues with the driver package itself? i.e. bad/missing catalog file. Be sure that the driver files is completely installed that all required files are in the appropriate locations. If the driver isn't WHQL signed then you have to set the legacy attribute on the DIFX driver element; otherwise that could maybe be another factor? -Original Message- From: Jury BURA [mailto:jury.b...@visutechsystem.by] Sent: Wednesday, February 09, 2011 14:24 To: wix-users@lists.sourceforge.net Subject: [WiX-users] DIFXAPP: ERROR: Failed to calculate strong name. Hi! I have this error (WiX 3.6.1321): DIFXAPP: ENTER: InstallDriverPackages() DIFXAPP: INFO: 'CustomActionData' property 'DIFxApp Version' is '2.1'. DIFXAPP: INFO: 'CustomActionData' property 'UI Level' is '5'. DIFXAPP: INFO: 'CustomActionData' property 'componentId' is '{GUID}'. DIFXAPP: INFO: 'CustomActionData' property 'componentPath' is 'C:\PATH1\'. DIFXAPP: INFO: 'CustomActionData' property 'flags' is 0xA. DIFXAPP: INFO: 'CustomActionData' property 'installState' is '2'. DIFXAPP: INFO: 'CustomActionData' property 'ProductName' is '[product_name]'. DIFXAPP: INFO: 'CustomActionData' property 'ManufacturerName' is '[manufacturer_name]'. DIFXAPP: INFO: user SID of user performing the install is 'SID'. DIFXAPP: INFO: opening HKEY_USERS\SID\Software\Microsoft\Windows\CurrentVersion\DIFxApp\Comp o nents\ {GUID} (User's
Re: [WiX-users] DIFxApp does not properly rollback to the old driverwhen doing a major upgrade
programs but did not have the MsiDriverPackages table so I conclude they do something else). Best regards, James Johnston -Original Message- From: Quinton Tormanen [mailto:quint...@deltamotion.com] Sent: Friday, December 10, 2010 17:53 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] DIFxApp does not properly rollback to the old driverwhen doing a major upgrade Thanks for digging into this further. The support e-mail for DIFx Tools is difxt...@microsoft.com. I have received responses over the years from different people, but never any resolution to my problems. If that e-mail address is no longer valid, then I can give you the addresses of the specific people that replied. Please keep me posted on what you find out. --Quinton -Original Message- From: James Johnston [mailto:johnst...@inn-soft.com] Sent: Thursday, December 09, 2010 3:46 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] DIFxApp does not properly rollback to the old driverwhen doing a major upgrade Hi, As some of you have probably noticed, there has been some discussion recently regarding problems with DIFxApp causing rollbacks. I did some more investigation and was able to reliably reproduce the issue and come up with a very good idea on what is causing the problem. All investigation was done with the version of DIFxApp included with Windows DDK version 7600.16385.1; note that this will also reproduce with the version included with WiX 3.0 / 3.5. It was done on a clean Windows XP SP2 virtual machine with .NET Framework 2.0; however we have observed the same problems on Windows 7. As far as I can tell, this is a bug in the DIFxApp DLLs and/or the WiX extension for DIFxApp. If anyone knows some good workarounds, or how to report this to the proper channels and get it fixed it would be much appreciated! From what I can tell, there exist situations in any DIFxApp setup program doing an upgrade where if the user cancels the setup at a certain point (or there is an error in the installation of the new product) then the user's system will be hosed and they would be unable to uninstall the product without some involved technical support. If the bug can't be fixed or worked around, I don't see how DIFxApp is suitable for use in a commercial product that needs to support upgrades (i.e. all products). And since DIFxApp isn't open source, I can't go in and just fix the problem. Very frustrating! ... -- Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL, new data types, scalar functions, improved concurrency, built-in packages, OCI, SQL*Plus, data movement tools, best practices and more. http://p.sf.net/sfu/oracle-sfdev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL, new data types, scalar functions, improved concurrency, built-in packages, OCI, SQL*Plus, data movement tools, best practices and more. http://p.sf.net/sfu/oracle-sfdev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] DIFxApp does not properly rollback to the old driver when doing a major upgrade
; for example the GUID of the driver component is shown as {driver component GUID} because I removed the actual GUID from this public e-mail list. * Large portions of the log file were removed; only relevant data was included. Line numbers are sometimes indicated as Line XYZ:. * If lines were removed, this is indicated by .hundreds of lines. Best regards, James Johnston Log files below. Attempts to uninstall after upgrade: DIFXAPP: ERROR 0x2 encountered while opening persistent-info key for component '{driver component GUID}' DIFXAPP: UninstallDriverPackages failed with error 0x2 DIFXAPP: RETURN: UninstallDriverPackages() 2 (0x2) Upgrade: Line 226: Action start 22:26:17: RemoveExistingProducts. .hundreds of lines. Action 22:26:22: MsiProcessDrivers. Action start 22:26:22: MsiProcessDrivers. DIFXAPP: ENTER: ProcessDriverPackages() DIFXAPP: INFO: 'Component' is 'MyDriverComponent' DIFXAPP: INFO: Component state 0x3 - 0x2 DIFXAPP: INFO: 'ComponentId' is {driver component GUID} DIFXAPP: INFO: 'Flags' is 10 DIFXAPP: INFO: component path is DIFXAPP: INFO: user SID of user performing the install is 'S-1-5-21-1644491937-2147298945-839522115-1003'. DIFXAPP: INFO: creating HKEY_USERS\S-1-5-21-1644491937-2147298945-839522115-1003\Software\Microsoft\ Windows\CurrentVersion\DIFxApp\Components\{driver component GUID} (User's SID: 'S-1-5-21-1644491937-2147298945-839522115-1003') ... Action 22:26:22: MsiUninstallDrivers. Action start 22:26:22: MsiUninstallDrivers. MsiUninstallDrivers: Action ended 22:26:22: MsiUninstallDrivers. Return value 1. DIFXAPP: RETURN: ProcessDriverPackages() 0 (0x0) Line 460: Action ended 22:26:22: MsiProcessDrivers. Return value 1. .hundreds of lines. Action 22:26:28: MsiUninstallDrivers. DIFXAPP: UninstallDriverPackages() DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.1. DIFXAPP: 'CustomActionData' property 'UI Level' is 5. DIFXAPP: 'CustomActionData' property 'componentId' is {driver component GUID}. DIFXAPP: 'CustomActionData' property 'flags' is 0xA. DIFXAPP: 'CustomActionData' property 'ProductName' is My Product. DIFXAPP: 'CustomActionData' property 'ManufacturerName' is My Company. DIFXAPP: INFO: user SID of user performing the install is 'S-1-5-21-1644491937-2147298945-839522115-1003'. DIFXAPP: INFO: opening HKEY_USERS\S-1-5-21-1644491937-2147298945-839522115-1003\Software\Microsoft\ Windows\CurrentVersion\DIFxApp\Components\{driver component GUID} (User's SID: 'S-1-5-21-1644491937-2147298945-839522115-1003') ... DIFXAPP: INFO: ENTER: DriverPackageUninstallW DIFXAPP: INFO: Uninstalling driver package C:\WINDOWS\system32\DRVSTORE\productbus_some_big_guid_here\productbus.inf... DIFXAPP: INFO: Successfully removed 'C:\WINDOWS\INF\oem8.inf'. DIFXAPP: INFO: No devices found for C:\WINDOWS\system32\DRVSTORE\productbus_some_big_guid_here\productbus.inf uninstall. DIFXAPP: INFO: Driver store entry 'C:\WINDOWS\system32\DRVSTORE\productbus_some_big_guid_here\productbus.inf' removed. DIFXAPP: SUCCESS:Uninstall completed. DIFXAPP: INFO: RETURN: DriverPackageUninstallW (0x0) DIFXAPP: INFO: driver store 'C:\WINDOWS\system32\DRVSTORE\productbus_some_big_guid_here\productbus.inf' uninstalled. DIFXAPP: INFO: deleted add remove programs key for 'C:\WINDOWS\system32\DRVSTORE\productbus_some_big_guid_here\productbus.inf'. DIFXAPP: A reboot is not needed to uninstall the driver package '{driver component GUID}'. 2186: DIFXAPP: RETURN: UninstallDriverPackages() 0 (0x0) .hundreds of lines. Action 22:26:49: MsiCleanupOnSuccess. Action start 22:26:49: MsiCleanupOnSuccess. DIFXAPP: ENTER: CleanupOnSuccess() DIFXAPP: INFO: 'Component' is 'MyDriverComponent' DIFXAPP: INFO: 'ComponentId' is {driver component GUID} DIFXAPP: INFO: user SID of user performing the install is 'S-1-5-21-1644491937-2147298945-839522115-1003'. DIFXAPP: INFO: opening HKEY_USERS\S-1-5-21-1644491937-2147298945-839522115-1003\Software\Microsoft\ Windows\CurrentVersion\DIFxApp\Components\{driver component GUID} (User's SID: 'S-1-5-21-1644491937-2147298945-839522115-1003') ... DIFXAPP: RETURN: CleanupOnSuccess() 0 (0x0) 8765: Action ended 22:26:49: MsiCleanupOnSuccess. Return value 1. .hundreds of lines. 9332: Action ended 22:26:50: RemoveExistingProducts. Return value 1. Action 22:26:51: MsiProcessDrivers. Action start 22:26:51: MsiProcessDrivers. DIFXAPP: ENTER: ProcessDriverPackages() DIFXAPP: INFO: 'Component' is 'MyDriverComponent' DIFXAPP: INFO: Component state 0x2 - 0x3 DIFXAPP: INFO: 'ComponentId' is {driver component GUID} DIFXAPP: INFO: 'Flags' is 10 DIFXAPP: INFO: component path is C:\Program Files\My Product\Product-CDM-Bus\ DIFXAPP: INFO: user SID of user performing the install is 'S-1-5-21-1644491937-2147298945-839522115-1003'. DIFXAPP: INFO: creating HKEY_USERS\S-1-5-21-1644491937-2147298945-839522115-1003\Software\Microsoft\ Windows\CurrentVersion\DIFxApp\Components\{driver component GUID} (User's SID: 'S-1-5-21-1644491937-2147298945-839522115-1003') ... Action 22:26:52: MsiRollbackInstall
Re: [WiX-users] packaging large number of files
I was also immediately concerned with the serviceability ramifications as outlined by Rob below. What kind of files are being installed? With some applications there might not be much you can do about it. But for other applications, you can do a lot. For example, the video game industry will compile the thousands of constant, non-changing assets (textures, sounds, etc.) into a small number of files so that the installer and the computer's file system don't have to deal with so many files. James -Original Message- From: Rob Mensching [mailto:r...@robmensching.com] Sent: Saturday, December 04, 2010 07:53 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] packaging large number of files No, nothing in the Windows Installer supports that sort of scenario. Not exactly sure what that would accomplish anyway. How would you patch or update such files? Presumably you'd have to list them with the Windows Installer somehow and that would get you right back where you are. Now, it would be nice if the Windows Installer installed files faster than it does... but that isn't something we can really fix in the WiX toolset. On Fri, Dec 3, 2010 at 10:24 AM, Sanjay Rao s...@noida.interrasystems.comwrote: Hi All, Our software has to install a large number(more than 50,000) of files at target machine and We followed one component per file strategy(as recommended by WIX and MSI). While doing major upgrades it consumes a lot of time(sometimes 30 minutes) on some of the screens. I want to compress some folders (holding larger number of files 25000) and make a single file and then include the compresses file into msi installer. After installer finishes, I want to decompress this compressed file. My questions is : Is there any way in WIX to decompress the file after installation completes ? Regards, Sanjay Rao -- What happens now with your Lotus Notes apps - do you make another costly upgrade, or settle for being marooned without product support? Time to move off Lotus Notes and onto the cloud with Force.com, apps are easier to build, use, and manage than apps on traditional platforms. Sign up for the Lotus Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] cabbing for both 32-64-bit files
LOL! Naaah... if contributors know what they're doing and commit good patches then the quality will be good and I don't care who they work for. No offense intended to anybody. :) James -Original Message- From: Pally Sandher [mailto:pally.sand...@iesve.com] Sent: Monday, December 06, 2010 12:10 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] cabbing for both 32-64-bit files I hope he works for Microsoft Rob otherwise James might be disappointed at the quality of Burn ;) Palbinder Sandher Software Deployment 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: Rob Mensching [mailto:r...@robmensching.com] Sent: 04 December 2010 07:29 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] cabbing for both 32-64-bit files Fredrik is working on Burn. Therefore, it rocks! smile/ On Fri, Dec 3, 2010 at 10:06 AM, James Johnston johnst...@inn-soft.comwrote: Probably, except that there were some reasons why I decided against dotNetInstaller. In the end, given that I had only one prereq (DOTNETFX 2.0), I used the VS2008 bootstrapper because it's supported by Microsoft; seems to work well at what it does. Also works with MSBuild. If I replace this with something I'm guessing it might be something like Burn, since that has the backing and expertise of Microsoft employees; if Burn is anything like the quality of WiX itself I expect it to be top-notch. -Original Message- From: Pally Sandher [mailto:pally.sand...@iesve.com] Sent: Friday, December 03, 2010 16:40 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] cabbing for both 32-64-bit files Wouldn't it be simpler to have 1 executable that does all the work for you rather than this chain of executables ending in MSI's? dotnetinstaller (http://dotnetinstaller.codeplex.com/) for example could simplify that whole convoluted process to 1 executable containing both your MSI's all your cab files. Palbinder Sandher Software Deployment 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: James Johnston [mailto:johnst...@inn-soft.com] Sent: 03 December 2010 16:06 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] cabbing for both 32-64-bit files Right; it comes in a self-extracting EXE that then launching the VS2008 bootstrapper. The generated VS2008 bootstrapper EXEs have the MSI name embedded in them so there are two VS2008 bootstrapper EXEs: one for each MSI. I wrote a custom program in C that the self-extracting EXE launches. This app determines which VS2008 bootstrapper EXE to start based on the platform. Also it moves the setup files to a different temp directory to avoid trying to delete setup files that are still in use (see issue where VS2008 bootstrapper returns immediately instead of waiting for the app to finish installing). -Original Message- From: Sean Farrow [mailto:sean.far...@seanfarrow.co.uk] Sent: Friday, December 03, 2010 05:20 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] cabbing for both 32-64-bit files Hi James: Thanks for this, I'm assuming you then used a bundle to deal with the extraction/running the msi? Cheers Sean. -Original Message- From: James Johnston [mailto:johnst...@inn-soft.com] Sent: 02 December 2010 22:01 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] cabbing for both 32-64-bit files I wanted a unified self-extracting EXE for both 32- and 64-bit versions. What I wound up doing was this: 1. The build script combined with WiX conditional compilation / preprocessor was used to compile to two different MSI files: one 32-bit and one 64-bit. Each was compiled individually. (For example, 32-bit MSI has a launch condition preventing use on 64-bit Windows). 2. Files that are shared go into a common external cabinet file. Because they are shared, each variation of the build script compile/link should produce the same CAB file. I use a diff command just to make sure this is the case before merging the 32-bit and 64-bit build output directories. 3. Files that are not shared go into two cabinets: one for 32-bit files to go with 32-bit MSI, and one for 64-bit files to go with 64-bit MSI
Re: [WiX-users] What version of DIFxApp is in DIFxAppExtension?
(You can just open the difxapp_platform.wixlib files in 7-Zip to get to the DLLs; I believe they are just MS cabinet files with some XML appended. No need to look at WiX source code; just extract and rename.) From the OP: It would also be good if someone could verify with the DIFxApp team that WiX should update to this version. They are quite poor at documenting what's changed and versioning clearly, so there is some doubt in my mind. I am in 100% agreement with this. I did some rooting around in the WDK and WiX sources and came to some observations to summarize. First, I wondered whether an update occurred from WiX 3.0 to WiX 3.5. The answer is no. I compared DIFxApp DLL versions in Wix 3.0 vs. WiX 3.5 (escrow version from a couple days ago). They have identical DIFxApp DLLs (compared with diff). Therefore, simply upgrading to WiX 3.5 probably won't help anyone having problems with DIFx unless the WiX extension was having trouble sequencing the custom actions, or some such problem like that and was fixed in WiX 3.5 (I am not aware of a change like that, although I didn't look). These DIFxApp files included with WiX are dated 5/15/2009 02:27 UTC with a file version of 2.1.1.0; product version 2.1.1. The signing time of the digital signature was 8/27/2008 00:06 UTC. Then I downloaded the Windows driver kit 7.1.0 a few days ago; it installed to directory named 7600.16385.1 so I guess that is the exact version. Under C:\WinDDK\7600.16385.1\redist\DIFx\DIFxApp\WixLib\x86 I found some DIFxApp DLLs. They are not the same as the files included with WiX. Strangely enough, I also found a 3 KB wixlib file in that directory with only the XML. These DLLs are dated 2/8/2010 21:59 UTC with a file version 2.1.0.0; product version 2.1. The signing time on the digital signature was 2/9/2010 06:00 UTC. To summarize: * WiX 3.0/3.5: DIFxApp version 2.1.1 signed 8/27/2008. * WDK 7.1.0: DIFxApp version 2.1.0 signed 2/09/2010. Some conclusions: * Apparently the DIFx team at Microsoft isn't properly versioning DIFxApp. How do we have newer files being distributed with older version numbers? Probably the only reliable method of versioning DIFxApp at this point is using the digital signatures! * Communication between the DIFx team and the WiX team could be improved. Why is there a wixlib file included with the WDK yet no mention is made of an update to DIFxApp in WiX? I searched the WiX bug tracker for DIFx; the only thing I have seen is the ticket submitted by Quinton earlier today. It would be great if they could take responsibility contribute DIFx updates to the WiX project? The actual MSDN pages regarding DIFxApp have documentation on using DIFxApp with WiX; it would be only logical to assume that they would be helping to maintain the system that they advocate in the documentation. Updating WiX's DIFxApp only when users have problems seems like a poor long-term strategy. Perhaps the best thing might be if the DIFx wixlib files were removed completely from WiX if they aren't maintained? The definitive place to get these wixlib files could then become the WDK. (Side note: it would be very useful if Microsoft could publish a changelog for DIFxApp; I am wondering whether the new version might fix some of the problems Quinton Tormanen and I have been having with DIFxApp...) In the meantime, perhaps the best strategy for DIFxApp users to take might be to link in the wixlib file from the WDK and avoid what comes bundled with WiX? The OP created a ticket at: http://sourceforge.net/tracker/?func=detailaid=3130590group_id=105970atid =642717 but since OP didn't include this link I thought I would add it to this discussion. James -Original Message- From: Quinton Tormanen [mailto:quint...@deltamotion.com] Sent: Monday, December 06, 2010 18:38 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] What version of DIFxApp is in DIFxAppExtension? Sorry to subject you all to my conversation with myself as I figure out what's what, but I thought one final(?) update on what I found out may be useful to someone else out there: * The latest version of the DIFx tools was included in WDK 7.1.0 (7600.16385.1) and includes files built on 2/8/2010. The WDK documentation recommends that although previous WDK's included 2.1 DIFx tools, the ones from WDK 7.1.0 should be used, which they are currently not. Hopefully the DIFxAppExtension can be updated soon with the current versions. --Quinton -Original Message- From: Quinton Tormanen Sent: Monday, December 06, 2010 10:17 AM To: 'General discussion for Windows Installer XML toolset.' Subject: RE: What version of DIFxApp is in DIFxAppExtension? I think I figured it out. The files do appear to match the MultiLin versions of the 8/26/2008 versions (shipped with WinDDK 6001.18002) (I was comparing with the English versions). So, what can be done about getting DIFxAppExtension to use the latest versions