Re: [WiX-users] Scheduling includes invalid actions
Thanks for the explanation that makes sense, from this I guess there is no way to detect that you have scheduled something after an action that is not included. I'll raise a bug with this text so it is not lost. I guess it could also happen with any event. It was fairly easy to detect in the log, I only had the problem because cut and pasted code from another project. Neil Neil Sleightholm X2 Systems Limited n...@x2systems.com mailto:n...@x2systems.com From: Blair [mailto:os...@live.com] Sent: Wed 08/12/2010 05:37 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Scheduling includes invalid actions Currently it is by design that any action you reference using Before or After when scheduling any other action creates a reference to that referenced action, which will cause that action's fragment to be included. This is required since it is the linker that assigns numbers to the sequences of actions that use positions relative to other actions to position themselves in the sequence tables. The fragment in WixUtilExtension containing SchedSecureObjects schedules both SchedSecureObjects and SchedSecureObjectsRollback. SchedSecureObjectsRollback is by default scheduled to run after UnpublishFeatures (but you can change that if you wish, along with its condition), while SchedSecureObjects is similarly scheduled after InstallServices. Since UnpublishFeatures comes long before InstallServices, of course SchedSecureObjectsRollback would run first. That fragment does not include an EnsureTable Id=SecureObjects/ element, which would have been good defensive programming, most likely because it assumes that the only reference to the fragment would come from the compiler extension located in the extension itself, not from someone reaching into the extension the way you did. In both custom actions, if the table is empty, it appears (based on a cursory glance at the code) that the ca will not fail, meaning that a workaround for you would be to include the EnsureTable element I mention above in the same fragment you schedule some action after SchedSecureObjects. If you didn't have WixUtilExtension referenced by light.exe, the SchedSecureObjects action would not have been found and you would have received a linker error (it can't schedule something after something it doesn't know about). Remove the reference to the extension and you should see the code fail to link. I don't think you have a showstopper error here, although as I say in the future it may be worth adding EnsureTable elements to each fragment where custom actions are scheduled via extension-embedded wixlibs. Blair -Original Message- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Tuesday, December 07, 2010 2:05 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Scheduling includes invalid actions This is what the log looks like: Action ended 21:55:50: ProcessComponents. Return value 1. Action start 21:55:50: UnpublishFeatures. MSI (s) (DC:28) [21:55:50:121]: Doing action: SchedSecureObjectsRollback Action ended 21:55:50: UnpublishFeatures. Return value 1. MSI (s) (DC:B8) [21:55:50:154]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI7E6F.tmp, Entrypoint: SchedSecureObjectsRollback MSI (s) (DC:B4) [21:55:50:155]: Generating random cookie. MSI (s) (DC:B4) [21:55:50:162]: Created Custom Action Server with PID 8564 (0x2174). MSI (s) (DC:40) [21:55:50:345]: Running as a service. MSI (s) (DC:40) [21:55:50:347]: Hello, I'm your 32bit Impersonated custom action server. MSI (s) (DC!D0) [21:55:50:377]: Note: 1: 2205 2: 3: SecureObjects MSI (s) (DC!D0) [21:55:50:377]: Note: 1: 2228 2: 3: SecureObjects 4: SELECT `SecureObjects`.`SecureObject`, `SecureObjects`.`Table`, `SecureObjects`.`Domain`, `SecureObjects`.`User`, `SecureObjects`.`Permission`, `SecureObjects`.`Component_`, `Component`.`Attributes` FROM `SecureObjects`,`Component` WHERE `SecureObjects`.`Component_`=`Component`.`Component` Action start 21:55:50: SchedSecureObjectsRollback. SchedSecureObjectsRollback: Error 0x8007064f: failed to open view on database SchedSecureObjectsRollback: Error 0x8007064f: failed to open view on SecureObjects table CustomAction SchedSecureObjectsRollback returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox) MSI (s) (DC:28) [21:55:50:380]: Machine policy value 'DisableRollback' is 0 MSI (s) (DC:28) [21:55:50:380]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\R ollback\Scripts 3: 2 Action ended 21:55:50: SchedSecureObjectsRollback. Return value 3. I am not sure why it is doing SchedSecureObjectsRollback as it hasn't failed up to that point. There isn't a SecureObjects table in the MSI but SchedSecureObjects is in InstallExecuteSequence at sequence 5801 with the condition NOT REMOVE~=ALL AND VersionNT 400. It doesn't surprise me
[WiX-users] Can RegistrySearch read 64bit hive from 32bit package?
We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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] Can RegistrySearch read 64bit hive from 32bit package?
Hi Sharad, There was already discussion in Wix-users about Registry and 64-32 bit redirection. I think it is not supported (documented) scenario by Microsoft Installer, but you can specify Win64=Yes as you wrote already, but also suppress validation of ICE. It should search in 64 bit branch of registry (without redirection). Igor -Original Message- From: Sharad Patel [mailto:spa...@winscribe.com] Sent: Wednesday, December 08, 2010 10:58 AM To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package? We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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 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. -- 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] Can RegistrySearch read 64bit hive from 32bit package?
Hi, No doesn't work. The only way is to create a Custom Action which runs as 64bit CA and does the job for you. But this is not recommended as heree packages for x86 and x64 would be the best approach. It's just something to get the job done. Tobias 2010/12/8 Sharad Patel spa...@winscribe.com: We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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 -- 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] Can RegistrySearch read 64bit hive from 32bitpackage?
Could you use the upgrade table to detect the product ? -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: 08 December 2010 10:14 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage? Hi, No doesn't work. The only way is to create a Custom Action which runs as 64bit CA and does the job for you. But this is not recommended as heree packages for x86 and x64 would be the best approach. It's just something to get the job done. Tobias 2010/12/8 Sharad Patel spa...@winscribe.com: We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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 -- 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 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. -- 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] Can RegistrySearch read 64bit hive from32bitpackage?
You could simply duplicate the RegistrySearch into a second Property set the Win64 attribute accordingly on each? E.g. Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion Win64=no / /Property Property Id=APPFABRICX64 RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion Win64=yes / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric.![CDATA[(APPFABRIC OR APPFABRICX64 ) OR Installed]]/Condition The 2nd RegistrySearch will give you an ICE80 *warning* for using a 64-bit RegistrySearch in a 32-bit package which you can suppress (or just ignore if you don't have treat warning as errors on) but it should work on both x86 x64 systems with the above code. 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: Peter Shirtcliffe [mailto:pshirtcli...@sdl.com] Sent: 08 December 2010 10:18 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from32bitpackage? Could you use the upgrade table to detect the product ? -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: 08 December 2010 10:14 To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage? Hi, No doesn't work. The only way is to create a Custom Action which runs as 64bit CA and does the job for you. But this is not recommended as heree packages for x86 and x64 would be the best approach. It's just something to get the job done. Tobias 2010/12/8 Sharad Patel spa...@winscribe.com: We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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 -- 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 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.
Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package?
One option I have used is to write a .Net 4.0 DTF custom action that allows you to open the 64 bit registry from a 32 bit CA using RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64). No good if .Net 4.0 is not on your target but there are ways to do the same thing in native code or interop. Neil Neil Sleightholm X2 Systems Limited n...@x2systems.com mailto:n...@x2systems.com From: Sharad Patel [mailto:spa...@winscribe.com] Sent: Wed 08/12/2010 09:57 To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package? We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- 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 -- 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
[WiX-users] uninstall not removing files
Hi all, I have a wix generated installer that I am programmatically tweaking to add new files. Component Id=PolicyComponent Guid=5836d91a-afd9-4d33-8622-d0b39a6870c3 File Id=PolicyFile Source=configFiles\policy.xml KeyPath=yes Name=policy.xml/ RemoveFolder Id=RemoveAMFolder Directory=AM On=uninstall / RemoveFolder Id=RemoveCCFolder Directory=INSTALLLOCATION On=uninstall/ RemoveFile Id=RemovePolicyFile Directory=INSTALLLOCATION Name=*.* On=uninstall/ /Component I am having trouble removing files on uninstalling the modified installer. I am using Windows installer Deployment api to update the MSI file. I can correctly install the files, but not remove them on uninstall. Can someone advice on what might be missing on my end? Note that I have included RemoveFile and RemoveFolder tags in the component. Not sure if their ordering matters. thanks, sangeeta -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5815607.html Sent from the wix-users mailing list archive at Nabble.com. -- 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
[WiX-users] Using LZMA instead of default compression
Hi I've been using MakeMSI for a while now, and it's great that it uses LZMA [through http://upx.sourceforge.net/], as it offers an excellent compressions ratio with a fast decompression. Can the same be done with WiX? - If so, how? Please tell me if this can be done Thank you, Alec Taylor -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Ignoring DIFxApp Return Codes
Since there were no takers on this one the first time around, let me simplify the question: 1. How can I override parts of a wixlib included by a Wix extension, or do I have to rebuild the extension? Specifically, I want to use the DIFxAppExtension and its difxapp*.wixlib, but I want to modify several of the CustomAction attributes. I tried simply duplicating the entries with the modified attribute in my wxs, but I get LGHT0091 : Duplicate symbol 'CustomAction:MsiProcessDrivers' found. It looks like I can build my own wixlib (duplicating the source from the extension's wixlib) and use the rest of the extension as is. Or is there another way? More details on what I'm trying to do are given below, but I'd be happy with an answer to just this specific question. --Quinton -Original Message- From: Quinton Tormanen [mailto:quint...@deltamotion.com] Sent: Monday, December 06, 2010 9:41 AM To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Ignoring DIFxApp Return Codes Related to the stability problems with DIFxApp (see http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg42659.htm l for example), I had an idea on how to bypass it's finickiness. To summarize briefly, the problem that DIFxApp gets into is that in some cases the registry entries it relies on get messed up (I was able to reproduce this by having a failed major update (caused by a goof on my part) and after the rollback, the driver store registry entries were not restored). Once in this state, attempts to uninstall the application fails, as do major updates (since they do an uninstall as part of the update). (Attempts for help from the DIFxApp team have got me nowhere, which is why I'm now looking at working around instead of fixing.) What I was considering was setting the @Return attribute for the DIFxAppExtension's CAs to ignore since I'm more concerned about getting my application updated successfully than DIFxApp giving up prematurely on registry entries that it messed up itself. That is, it appears to work to force the uninstall (using the msicuu2.exe util) and then reinstall--the drivers are made available correctly--so I am willing to ignore the error it has when uninstalling. So, here are my specific questions: 1. Is there a way to override the custom actions included by the DIFxAppExtension without modifying the extension? For example, the wxs from the DIFxAppExtension source, includes the following lines: CustomAction Id='MsiProcessDrivers' BinaryKey='DIFxApp.dll' DllEntry='ProcessDriverPackages' SuppressModularization='yes' Execute='immediate' / CustomAction Id='MsiInstallDrivers' BinaryKey='DIFxAppA.dll' DllEntry='InstallDriverPackages' SuppressModularization='yes' Execute='deferred' Impersonate='no' / CustomAction Id='MsiUninstallDrivers' BinaryKey='DIFxAppA.dll' DllEntry='UninstallDriverPackages' SuppressModularization='yes' Execute='deferred' Impersonate='no' / CustomAction Id='MsiRollbackInstall' BinaryKey='DIFxAppA.dll' DllEntry='RollbackInstall' SuppressModularization='yes' Execute='rollback' Impersonate='no' / CustomAction Id='MsiCleanupOnSuccess' BinaryKey='DIFxApp.dll' DllEntry='CleanupOnSuccess'SuppressModularization='yes' Execute='immediate' / I'd like to replace some of them with CustomActions that have @Return=ignore but are otherwise equivalent. Can I just add these same items to my project's WXS and they will automatically override the ones in the DIFxAppExtension? Obviously, I could skip the extension and just do it myself--which is what I did before the extension was added in v3.0--but it'd be easier to use the extension. 2. Is there as way to ignore the return code only on uninstall? Notice that I can't change the CA IDs since they call each other, which seems to rule out making two CAs--one with and one without--and giving them different conditions. 3. What are some reasons why I shouldn't do this hack? 4. Does anyone (particularly at MSFT) have an inside track to getting the DIFxApp team to fix this long-standing issue? It seems to me that the uninstall should gracefully handle mangled driver store records (cleaning them up), and rollbacks on major updates shouldn't mess up the install. Quinton Tormanen Software Engineer Delta Computer Systems, Inc. http://www.deltamotion.com -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Using LZMA instead of default compression
Been asked before (many many times, see nabble or mail-archive.com). Unless Windows Installer supports it, it's unlikely for WiX to support it. In this case you're limited by the Cabinet API if you want to ship purely MSI's. Cabinets are either LZX or MSZIP algorithm compression. If you want to implement something like LZMA yourself then you can do something like specifying no compression in your Media Elements then compress the resulting MSI CABs using a self-extractor. Burn other bootstrappers may support something like that but WiX itself doesn't/can't. 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: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: 08 December 2010 16:32 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Using LZMA instead of default compression Hi I've been using MakeMSI for a while now, and it's great that it uses LZMA [through http://upx.sourceforge.net/], as it offers an excellent compressions ratio with a fast decompression. Can the same be done with WiX? - If so, how? Please tell me if this can be done Thank you, Alec Taylor -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Run DB Scripts
Hi How can I run DBScripts during the installation process. I have seen an article which looks for SQLCMD.exe and calls the respective .SQL files . Is this the right way? Can anyone please point me to some pointers on the best practice to run DB Scripts. Regards Anweshi -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Run DB Scripts
I haven't had to use it myself but have you looked at WiX SQLExtension? http://wix.sourceforge.net/manual-wix3/sql_xsd_index.htm It appears to have an SQLScript Element which may or may not be what you're looking for. 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: Anu Dev [mailto:queryl...@yahoo.com] Sent: 08 December 2010 17:01 To: WIX Subject: [WiX-users] Run DB Scripts Hi How can I run DBScripts during the installation process. I have seen an article which looks for SQLCMD.exe and calls the respective .SQL files . Is this the right way? Can anyone please point me to some pointers on the best practice to run DB Scripts. Regards Anweshi -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Run DB Scripts
Use the sql:SqlScript/ element is the WiX way to do it. Working very well for me. -Original Message- From: Anu Dev [mailto:queryl...@yahoo.com] Sent: Wednesday, December 08, 2010 9:01 AM To: WIX Subject: [WiX-users] Run DB Scripts Hi How can I run DBScripts during the installation process. I have seen an article which looks for SQLCMD.exe and calls the respective .SQL files . Is this the right way? Can anyone please point me to some pointers on the best practice to run DB Scripts. Regards Anweshi -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Stepping back a moment...
Sorry to bug you all with trivia, but I just wanted to take a moment and tell everyone on the WiX team that you guys rock! I've been using it for several years. I'm not a installer guru, but these tools and the support you guys provide make this subtle science manageable for lay people like myself. Thank you to you all! (Perhaps it's my guilt for dumping all my questions on you guys over the years that compelled me to thank you guys, but thank you nonetheless!) Quinton Tormanen Software Engineer Delta Computer Systems, Inc. http://www.deltamotion.com http://www.deltamotion.com/ -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] uninstall not removing files
I think you'll need to describe your scenario in more detail. If you modify a package by adding a new file and attempt to install it, then it won't work if the previous version is already there - that ProductCode guid is already installed. Are you doing an upgrade? Or is this a brand new fresh install of your new setup? Note that if you have ever set the Permanent attribute of the component guid to true then it will not uninstall. Same with legacy sharing, so it makes a difference whether you're on an unspoiled test system or not. Use virtual machines! Phil Wilson -Original Message- From: sangeeta1 [mailto:snmsn...@gmail.com] Sent: Wednesday, December 08, 2010 7:38 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] uninstall not removing files Hi all, I have a wix generated installer that I am programmatically tweaking to add new files. Component Id=PolicyComponent Guid=5836d91a-afd9-4d33-8622-d0b39a6870c3 File Id=PolicyFile Source=configFiles\policy.xml KeyPath=yes Name=policy.xml/ RemoveFolder Id=RemoveAMFolder Directory=AM On=uninstall / RemoveFolder Id=RemoveCCFolder Directory=INSTALLLOCATION On=uninstall/ RemoveFile Id=RemovePolicyFile Directory=INSTALLLOCATION Name=*.* On=uninstall/ /Component I am having trouble removing files on uninstalling the modified installer. I am using Windows installer Deployment api to update the MSI file. I can correctly install the files, but not remove them on uninstall. Can someone advice on what might be missing on my end? Note that I have included RemoveFile and RemoveFolder tags in the component. Not sure if their ordering matters. thanks, sangeeta -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5815607.html Sent from the wix-users mailing list archive at Nabble.com. -- 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 *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at 3rd Floor, 40 Grosvenor Place, London, SW1X 7AW (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77nav_id=80prev_id=77. You may contact Invensys plc on +44 (0)20 3155 1200 or e-mail recept...@invensys.com. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] uninstall not removing files
I have a requirement to update an existing MSI with new files and I am using the DTP API to write to data base tables - Files, Components, Directory, FeatureComponents, Media, etc. I am doing a reinstall every time I have a new MSI to install RREINSTALLMODE=VOMUS. This replaces all the files with new set of files on the target system. On uninstall however, I was expecting it to remove all the files automatically. I do not have any permanent attribute to Component element. I am not an installer expert, so please advice if I am doing anything wrong here. Many thanks, sangeeta On Wed, Dec 8, 2010 at 12:49 PM, Wilson, Phil-2 [via Windows Installer XML (WiX) toolset] ml-node+5816105-783740139-306...@n2.nabble.comml-node%2b5816105-783740139-306...@n2.nabble.com wrote: I think you'll need to describe your scenario in more detail. If you modify a package by adding a new file and attempt to install it, then it won't work if the previous version is already there - that ProductCode guid is already installed. Are you doing an upgrade? Or is this a brand new fresh install of your new setup? Note that if you have ever set the Permanent attribute of the component guid to true then it will not uninstall. Same with legacy sharing, so it makes a difference whether you're on an unspoiled test system or not. Use virtual machines! Phil Wilson -Original Message- From: sangeeta1 [mailto:[hidden email]http://user/SendEmail.jtp?type=nodenode=5816105i=0] Sent: Wednesday, December 08, 2010 7:38 AM To: [hidden email] http://user/SendEmail.jtp?type=nodenode=5816105i=1 Subject: [WiX-users] uninstall not removing files Hi all, I have a wix generated installer that I am programmatically tweaking to add new files. Component Id=PolicyComponent Guid=5836d91a-afd9-4d33-8622-d0b39a6870c3 File Id=PolicyFile Source=configFiles\policy.xml KeyPath=yes Name=policy.xml/ RemoveFolder Id=RemoveAMFolder Directory=AM On=uninstall / RemoveFolder Id=RemoveCCFolder Directory=INSTALLLOCATION On=uninstall/ RemoveFile Id=RemovePolicyFile Directory=INSTALLLOCATION Name=*.* On=uninstall/ /Component I am having trouble removing files on uninstalling the modified installer. I am using Windows installer Deployment api to update the MSI file. I can correctly install the files, but not remove them on uninstall. Can someone advice on what might be missing on my end? Note that I have included RemoveFile and RemoveFolder tags in the component. Not sure if their ordering matters. thanks, sangeeta -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5815607.htmlhttp://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5815607.html?by-user=t Sent from the wix-users mailing list archive at Nabble.com. -- 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 [hidden email] http://user/SendEmail.jtp?type=nodenode=5816105i=2 https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at 3rd Floor, 40 Grosvenor Place, London, SW1X 7AW (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77nav_id=80prev_id=77. You may contact Invensys plc on +44 (0)20 3155 1200 or e-mail [hidden email] http://user/SendEmail.jtp?type=nodenode=5816105i=3. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). -- This SF Dev2Dev email is sponsored by: WikiLeaks The End
Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage?
Hi Igor. Thanks for that. After reading your and Pally's message I realized that the project had warnings as errors setting turned on, which is why the build was failing with the ICE error. I think I will use the Win64 attribute and suppress the warning for now. @Tobias. Thanks for your suggestion too. Eventually we want to be able to support both x86 and x64 systems natively but that could take a while. @Peter. I'm not sure about the upgrade table but I will surely look it up. Thanks. @Pally. Thank you for your detailed example on how to duplicate the RegistrySearch and your warning suppression suggestion. I will just use your code and suppress the ICE warning for now. @Neil. Thanks. I thought DTF's dependency was .NET Framework 2.0? In any case our product is based on .NET 4.0. we already have a condition for checking that, so it wouldn't be a problem for us to write a managed custom action based to .NET 4.0. Cheers Sharad Patel -Original Message- From: Igor Paniushkin [mailto:ipaniush...@sdl.com] Sent: Wednesday, 8 December 2010 11:05 p.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage? Hi Sharad, There was already discussion in Wix-users about Registry and 64-32 bit redirection. I think it is not supported (documented) scenario by Microsoft Installer, but you can specify Win64=Yes as you wrote already, but also suppress validation of ICE. It should search in 64 bit branch of registry (without redirection). Igor -Original Message- From: Sharad Patel [mailto:spa...@winscribe.com] Sent: Wednesday, December 08, 2010 10:58 AM To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package? We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] uninstall not removing files
I have a fundamental question here: I was considering retaining the PackageCode in the updated MSI. Can some one advice if it is not advisable to have the same package code on the modified MSI? thanks, sangeeta -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5816307.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage?
@ Pally: Without trying I'd say when building with summary information template = intel WiX also should build a package that ignores the Win64=yes parameter and therefore search also the wowtree on a x64 system? Had the issue sometimes before and the only solution was a InstallScript InstallScript CA for handling that. (Was an InstallShield solution and not a WiX project) 2010/12/8 Sharad Patel spa...@winscribe.com: Hi Igor. Thanks for that. After reading your and Pally's message I realized that the project had warnings as errors setting turned on, which is why the build was failing with the ICE error. I think I will use the Win64 attribute and suppress the warning for now. @Tobias. Thanks for your suggestion too. Eventually we want to be able to support both x86 and x64 systems natively but that could take a while. @Peter. I'm not sure about the upgrade table but I will surely look it up. Thanks. @Pally. Thank you for your detailed example on how to duplicate the RegistrySearch and your warning suppression suggestion. I will just use your code and suppress the ICE warning for now. @Neil. Thanks. I thought DTF's dependency was .NET Framework 2.0? In any case our product is based on .NET 4.0. we already have a condition for checking that, so it wouldn't be a problem for us to write a managed custom action based to .NET 4.0. Cheers Sharad Patel -Original Message- From: Igor Paniushkin [mailto:ipaniush...@sdl.com] Sent: Wednesday, 8 December 2010 11:05 p.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage? Hi Sharad, There was already discussion in Wix-users about Registry and 64-32 bit redirection. I think it is not supported (documented) scenario by Microsoft Installer, but you can specify Win64=Yes as you wrote already, but also suppress validation of ICE. It should search in 64 bit branch of registry (without redirection). Igor -Original Message- From: Sharad Patel [mailto:spa...@winscribe.com] Sent: Wednesday, December 08, 2010 10:58 AM To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package? We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] uninstall not removing files
will keep in mind...thanks. On Wed, Dec 8, 2010 at 2:20 PM, Edwin G. Castro [via Windows Installer XML (WiX) toolset] ml-node+5816411-1747906018-306...@n2.nabble.comml-node%2b5816411-1747906018-306...@n2.nabble.com wrote: From http://msdn.microsoft.com/en-us/library/aa370568(VS.85).aspx Nonidentical .msi files should not have the same package code. It is important to change the package code because it is the primary identifier used by the installer to search for and validate the correct package for a given installation. If a package is changed without changing the package code, the installer may not use the newer package if both are still accessible to the installer. Windows Installer caches .msi files. I would not tempt fate by breaking the rules. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: sangeeta1 [mailto:[hidden email]http://user/SendEmail.jtp?type=nodenode=5816411i=0] Sent: Wednesday, December 08, 2010 10:55 AM To: [hidden email]http://user/SendEmail.jtp?type=nodenode=5816411i=1 Subject: Re: [WiX-users] uninstall not removing files I have a fundamental question here: I was considering retaining the PackageCode in the updated MSI. Can some one advice if it is not advisable to have the same package code on the modified MSI? thanks, sangeeta -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/uninstall-not-removing-files- tp5815607p5816307.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816411i=2 https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816411i=3 https://lists.sourceforge.net/lists/listinfo/wix-users -- View message @ http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5816411.html To start a new topic under wix-users, email ml-node+687560-220571316-306...@n2.nabble.comml-node%2b687560-220571316-306...@n2.nabble.com To unsubscribe from wix-users, click herehttp://windows-installer-xml-wix-toolset.687559.n2.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_codenode=687560code=c25tc25tMTBAZ21haWwuY29tfDY4NzU2MHwtODkyOTExNTcy. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/uninstall-not-removing-files-tp5815607p5816540.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version
Hi all, I am trying to generate a wxs source file using Heat.exe and wanted to check if I can pass values for Manufacturer, Name, Title and version to heat.exe? I tried using -var argument, but does nt seem to update it to the source file heat.exe dir c:\temp\Configuration\Files -ag -cg MyComp -ag -gg -g1 -ke -var Product/@Manufacturer= Product/@Manufacturer=%22ABCD -template product -out c:\temp\Configuration\wixauto\mainsource.wxs thanks! -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product-Manufacturer-Name-Title-version-tp5816654p5816654.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package?
Hi Tobias, Duplicating the RegistrySearch with Win64 yes and no seems to do the trick. I can see two entries in the RegLocator table and when I run the MSI on x64 system it does read the right registry key. The two records in the RegLocator table have different values in the Type column. I'm guessing one is for x64 while the other must be for Wow6432 node. Here's the slightly modified version of the AppFabric detection code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion Win64=no / /Property Property Id=APPFABRICX64 RegistrySearch Id=AppFabricRegistryX64 Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion Win64=yes / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[(APPFABRIC OR APPFABRICX64) OR Installed]] /Condition I have confirmed this by renaming the AppFabric registry value temporarily on both x86 and x64 test systems. I get the error, as expected, when the registry key is not found. Cheers Sharad -Original Message- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: Thursday, 9 December 2010 8:46 a.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from32bitpackage? @ Pally: Without trying I'd say when building with summary information template = intel WiX also should build a package that ignores the Win64=yes parameter and therefore search also the wowtree on a x64 system? Had the issue sometimes before and the only solution was a InstallScript InstallScript CA for handling that. (Was an InstallShield solution and not a WiX project) 2010/12/8 Sharad Patel spa...@winscribe.com: Hi Igor. Thanks for that. After reading your and Pally's message I realized that the project had warnings as errors setting turned on, which is why the build was failing with the ICE error. I think I will use the Win64 attribute and suppress the warning for now. @Tobias. Thanks for your suggestion too. Eventually we want to be able to support both x86 and x64 systems natively but that could take a while. @Peter. I'm not sure about the upgrade table but I will surely look it up. Thanks. @Pally. Thank you for your detailed example on how to duplicate the RegistrySearch and your warning suppression suggestion. I will just use your code and suppress the ICE warning for now. @Neil. Thanks. I thought DTF's dependency was .NET Framework 2.0? In any case our product is based on .NET 4.0. we already have a condition for checking that, so it wouldn't be a problem for us to write a managed custom action based to .NET 4.0. Cheers Sharad Patel -Original Message- From: Igor Paniushkin [mailto:ipaniush...@sdl.com] Sent: Wednesday, 8 December 2010 11:05 p.m. To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Can RegistrySearch read 64bit hive from 32bitpackage? Hi Sharad, There was already discussion in Wix-users about Registry and 64-32 bit redirection. I think it is not supported (documented) scenario by Microsoft Installer, but you can specify Win64=Yes as you wrote already, but also suppress validation of ICE. It should search in 64 bit branch of registry (without redirection). Igor -Original Message- From: Sharad Patel [mailto:spa...@winscribe.com] Sent: Wednesday, December 08, 2010 10:58 AM To: WiX-users@lists.sourceforge.net Subject: [WiX-users] Can RegistrySearch read 64bit hive from 32bit package? We are currently using the v3.5 RC build. We have a 32bit installer that detects AppFabric using the following bit of WiX code: Property Id=APPFABRIC RegistrySearch Id=AppFabricRegistry Type=raw Root=HKLM Key=SOFTWARE\Microsoft\AppFabric\v1.0 Name=ProductVersion / /Property Condition Message=Microsoft AppFabric was not found on this machine. Please install Microsoft AppFabric. ![CDATA[APPFABRIC ]] /Condition This works fine on 32bit systems but we get an error when the installer is run on x64 systems because AppFabric registry key only exists in the 64bit hive. If I try to use the Win64=yes attribute on the RegistrySearch element then I get an error LGHT1076: ICE80. All the searching I have does seems to suggest that 32bit packages can't access 64bit hive. Our application and the installer are both 32bit only. Of course without the RegistrySearch condition the installer works just fine on x64 systems but we would like to be able to detect AppFabric. So far writing an unmanaged (or managed) custom action seems like our only option. Is there a way to achieve this without a custom action? Thanks Sharad Patel -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet
Re: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version
Heat does not generate a Product/ element. Heat /? shows the following documentation for -var: -var VariableName substitute File/@Source=SourceDir with a preprocessor or a wix variable (e.g. -var var.MySource will become File/@Source=$(var.MySource)\myfile.txt and -var wix.MySource will become File/@Source=!(wix.MySource)\myfile.txt This does text transformation on the generated output wxs file. I created an empty text file called test.txt and used the following command line to harvest it using heat.exe: heat file test.txt -out test.wxs Here are the contents of test.wxs: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=SourceDir\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=SourceDir\code\test.txt If use -var like this: heat file test.txt -out test.wxs -var var.CodeDir Then I get this: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=$(var.CodeDir)\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=$(var.CodeDir)\code\test.txt just like the documentation says. In a Product/ element is *not* generated in either example. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: sangeeta1 [mailto:snmsn...@gmail.com] Sent: Wednesday, December 08, 2010 12:25 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version Hi all, I am trying to generate a wxs source file using Heat.exe and wanted to check if I can pass values for Manufacturer, Name, Title and version to heat.exe? I tried using -var argument, but does nt seem to update it to the source file heat.exe dir c:\temp\Configuration\Files -ag -cg MyComp -ag -gg -g1 -ke -var Product/@Manufacturer= Product/@Manufacturer=%22ABCD - template product -out c:\temp\Configuration\wixauto\mainsource.wxs thanks! -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product- Manufacturer-Name-Title-version-tp5816654p5816654.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version
I just saw the -template product parameter specified. That causes heat to generate the Product/ element. The -var parameter still works as shown previously in this case. You could use the -t parameter to specify a XSLT transform to use to modify the generated XML. You could author the XSLT transform to set those attributes to dereference a preprocessor variable: xsl:transform version=1.0 xmlns:xsl=http://www.w3.org/1999/XSL/Transform; xsl:output method=xml version=1.0 encoding=utf-8 indent=yes/ xsl:template match=@Manufacturer xsl:attribute name=Manufacturer$(var.Manufacturer)/xsl:attribute /xsl:template xsl:template match=node() | @* xsl:copy xsl:apply-templates select=@* | node()/ /xsl:copy /xsl:template /xsl:transform You can define similar templates for other attributes. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: Castro, Edwin G. (Hillsboro) [mailto:edwin.cas...@fiserv.com] Sent: Wednesday, December 08, 2010 1:58 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version Heat does not generate a Product/ element. Heat /? shows the following documentation for -var: -var VariableName substitute File/@Source=SourceDir with a preprocessor or a wix variable (e.g. -var var.MySource will become File/@Source=$(var.MySource)\myfile.txt and -var wix.MySource will become File/@Source=!(wix.MySource)\myfile.txt This does text transformation on the generated output wxs file. I created an empty text file called test.txt and used the following command line to harvest it using heat.exe: heat file test.txt -out test.wxs Here are the contents of test.wxs: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=SourceDir\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=SourceDir\code\test.txt If use -var like this: heat file test.txt -out test.wxs -var var.CodeDir Then I get this: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=$(var.CodeDir)\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=$(var.CodeDir)\code\test.txt just like the documentation says. In a Product/ element is *not* generated in either example. 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: sangeeta1 [mailto:snmsn...@gmail.com] Sent: Wednesday, December 08, 2010 12:25 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version Hi all, I am trying to generate a wxs source file using Heat.exe and wanted to check if I can pass values for Manufacturer, Name, Title and version to heat.exe? I tried using -var argument, but does nt seem to update it to the source file heat.exe dir c:\temp\Configuration\Files -ag -cg MyComp -ag -gg -g1 -ke -var Product/@Manufacturer= Product/@Manufacturer=%22ABCD - template product -out c:\temp\Configuration\wixauto\mainsource.wxs thanks! -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product- Manufacturer-Name-Title-version-tp5816654p5816654.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Using LZMA instead of default compression
Is that how MakeMSI does it? I don't see why you can't implement upx into Burn... On Thu, Dec 9, 2010 at 3:56 AM, Pally Sandher pally.sand...@iesve.com wrote: Been asked before (many many times, see nabble or mail-archive.com). Unless Windows Installer supports it, it's unlikely for WiX to support it. In this case you're limited by the Cabinet API if you want to ship purely MSI's. Cabinets are either LZX or MSZIP algorithm compression. If you want to implement something like LZMA yourself then you can do something like specifying no compression in your Media Elements then compress the resulting MSI CABs using a self-extractor. Burn other bootstrappers may support something like that but WiX itself doesn't/can't. 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: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: 08 December 2010 16:32 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Using LZMA instead of default compression Hi I've been using MakeMSI for a while now, and it's great that it uses LZMA [through http://upx.sourceforge.net/], as it offers an excellent compressions ratio with a fast decompression. Can the same be done with WiX? - If so, how? Please tell me if this can be done Thank you, Alec Taylor -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version
Product element can be generated by giving -template Product in the argument. If you type heat , you will see its syntax. And I think -var is only used for the SourceDir and not to replace any attribute in the file. This is my understanding, but please correct me if this is not right. Looks like I will have to load the xml in XmlDocument and update the attributes I want. Thanks for your example. sangeeta On Wed, Dec 8, 2010 at 5:01 PM, Edwin G. Castro [via Windows Installer XML (WiX) toolset] ml-node+5816953-1419466290-306...@n2.nabble.comml-node%2b5816953-1419466290-306...@n2.nabble.com wrote: Heat does not generate a Product/ element. Heat /? shows the following documentation for -var: -var VariableName substitute File/@Source=SourceDir with a preprocessor or a wix variable (e.g. -var var.MySource will become File/@Source=$(var.MySource)\myfile.txt and -var wix.MySource will become File/@Source=!(wix.MySource)\myfile.txt This does text transformation on the generated output wxs file. I created an empty text file called test.txt and used the following command line to harvest it using heat.exe: heat file test.txt -out test.wxs Here are the contents of test.wxs: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=SourceDir\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=SourceDir\code\test.txt If use -var like this: heat file test.txt -out test.wxs -var var.CodeDir Then I get this: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=$(var.CodeDir)\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=$(var.CodeDir)\code\test.txt just like the documentation says. In a Product/ element is *not* generated in either example. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: sangeeta1 [mailto:[hidden email]http://user/SendEmail.jtp?type=nodenode=5816953i=0] Sent: Wednesday, December 08, 2010 12:25 PM To: [hidden email]http://user/SendEmail.jtp?type=nodenode=5816953i=1 Subject: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version Hi all, I am trying to generate a wxs source file using Heat.exe and wanted to check if I can pass values for Manufacturer, Name, Title and version to heat.exe? I tried using -var argument, but does nt seem to update it to the source file heat.exe dir c:\temp\Configuration\Files -ag -cg MyComp -ag -gg -g1 -ke -var Product/@Manufacturer= Product/@Manufacturer=%22ABCD - template product -out c:\temp\Configuration\wixauto\mainsource.wxs thanks! -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product- Manufacturer-Name-Title-version-tp5816654p5816654.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816953i=2 https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816953i=3 https://lists.sourceforge.net/lists/listinfo/wix-users -- View message @ http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product-Manufacturer-Name-Title-version-tp5816654p5816953.html To start a new topic under wix-users, email
Re: [WiX-users] Using LZMA instead of default compression
How exactly do you get MakeMSI to do use LZMA compression? I was intrigued by the question so I looked for and installed MakeMSI but I can't find any references to LZMA compression. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: Wednesday, December 08, 2010 5:53 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Using LZMA instead of default compression Is that how MakeMSI does it? I don't see why you can't implement upx into Burn... On Thu, Dec 9, 2010 at 3:56 AM, Pally Sandher pally.sand...@iesve.com wrote: Been asked before (many many times, see nabble or mail-archive.com). Unless Windows Installer supports it, it's unlikely for WiX to support it. In this case you're limited by the Cabinet API if you want to ship purely MSI's. Cabinets are either LZX or MSZIP algorithm compression. If you want to implement something like LZMA yourself then you can do something like specifying no compression in your Media Elements then compress the resulting MSI CABs using a self-extractor. Burn other bootstrappers may support something like that but WiX itself doesn't/can't. 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: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: 08 December 2010 16:32 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Using LZMA instead of default compression Hi I've been using MakeMSI for a while now, and it's great that it uses LZMA [through http://upx.sourceforge.net/], as it offers an excellent compressions ratio with a fast decompression. Can the same be done with WiX? - If so, how? Please tell me if this can be done Thank you, Alec Taylor -- -- -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version
After trying out an example, I see the significance of the -var variable. Regarding you example in using -var How can I replace the value of Source to a physical path of the root folder (like c:\temp\test) without having to use a wix variable var.MySource? I am automating the generation of msi given a set of installable files. I will be invoking these commands from .net program. many thanks for your help on this.. On Wed, Dec 8, 2010 at 5:01 PM, Edwin G. Castro [via Windows Installer XML (WiX) toolset] ml-node+5816953-1419466290-306...@n2.nabble.comml-node%2b5816953-1419466290-306...@n2.nabble.com wrote: Heat does not generate a Product/ element. Heat /? shows the following documentation for -var: -var VariableName substitute File/@Source=SourceDir with a preprocessor or a wix variable (e.g. -var var.MySource will become File/@Source=$(var.MySource)\myfile.txt and -var wix.MySource will become File/@Source=!(wix.MySource)\myfile.txt This does text transformation on the generated output wxs file. I created an empty text file called test.txt and used the following command line to harvest it using heat.exe: heat file test.txt -out test.wxs Here are the contents of test.wxs: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=SourceDir\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=SourceDir\code\test.txt If use -var like this: heat file test.txt -out test.wxs -var var.CodeDir Then I get this: ?xml version=1.0 encoding=utf-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; Fragment DirectoryRef Id=TARGETDIR Directory Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Name=code / /DirectoryRef /Fragment Fragment DirectoryRef Id=dir22FE4E6795D49A83D8CC3F97AEACA344 Component Id=cmp5BA64E6B74419477D4B75A1E802397FC Guid=PUT-GUID-HERE File Id=fil67D465DE6C69EA3B3CD0B7487E6132B6 KeyPath=yes Source=$(var.CodeDir)\code\test.txt / /Component /DirectoryRef /Fragment /Wix Notice that File/@Source=$(var.CodeDir)\code\test.txt just like the documentation says. In a Product/ element is *not* generated in either example. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: sangeeta1 [mailto:[hidden email]http://user/SendEmail.jtp?type=nodenode=5816953i=0] Sent: Wednesday, December 08, 2010 12:25 PM To: [hidden email]http://user/SendEmail.jtp?type=nodenode=5816953i=1 Subject: [WiX-users] Heat.exe - How to pass Product Manufacturer, Name, Title, version Hi all, I am trying to generate a wxs source file using Heat.exe and wanted to check if I can pass values for Manufacturer, Name, Title and version to heat.exe? I tried using -var argument, but does nt seem to update it to the source file heat.exe dir c:\temp\Configuration\Files -ag -cg MyComp -ag -gg -g1 -ke -var Product/@Manufacturer= Product/@Manufacturer=%22ABCD - template product -out c:\temp\Configuration\wixauto\mainsource.wxs thanks! -- View this message in context: http://windows-installer-xml-wix- toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product- Manufacturer-Name-Title-version-tp5816654p5816654.html Sent from the wix-users mailing list archive at Nabble.com. -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816953i=2 https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list [hidden email] http://user/SendEmail.jtp?type=nodenode=5816953i=3 https://lists.sourceforge.net/lists/listinfo/wix-users -- View message @ http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Heat-exe-How-to-pass-Product-Manufacturer-Name-Title-version-tp5816654p5816953.html To start a new topic under
Re: [WiX-users] Deploying Sharepoint WSP file
Thank you just saw your reply :).. Sure would love to contribute :).. Will check with you offline in case of anyhelp From: Rob Mensching r...@robmensching.com To: General discussion for Windows Installer XML toolset. wix-users@lists.sourceforge.net Sent: Mon, November 1, 2010 8:34:10 PM Subject: Re: [WiX-users] Deploying Sharepoint WSP file I personally would have written a data driven C++ CA to do the work, make it reusable via a WiX Extension and contribute it to the WiX project so that other people in the future wouldn't have to do any work. smile/ On Fri, Oct 29, 2010 at 9:39 AM, Anu Dev queryl...@yahoo.com wrote: Hi I have a WSP which has to be deployed using the WIX installer. I am right now deploying this by running a batch file which deploys this WSP and activates the feature. And during uninstall will run another batch file which will deactive the WSP and uninstalls it. Would like to know if this is the right way or can you guys suggest me a better method to do. Regards Anweshi -- Nokia and ATT present the 2010 Calling All Innovators-North America contest Create new apps games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- virtually, Rob Mensching - http://RobMensching.com LLC -- Nokia and ATT present the 2010 Calling All Innovators-North America contest Create new apps games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Using LZMA instead of default compression
; ;--- We will look for UPX.EXE, if we find it we will configure MAKEMSI ;--- to compress the generated DLL... ; $GetFullBuildTimeFileName RcVar=@@UpxFile Macro=UPX.EXE File=upx.exe MustExist=N ;;See sundry.mmh #if [@@UpxFile = ''] ;--- Non-fatal so we'll just tell user -- #( #define+ DLLCA-C_COMPRESS_DLL_COMMAND_LINE ;;Need to OVERRIDE value (we couldn't do it earler or GetFullBuildTimeFileName wouldn't exist!) echo INFO: DLL not being compressed (UPX.EXE not found) #) #elseif ;--- UPX.EXE was found #( ;--- Define the macro that MAKEMSI will use as required - #define+ DLLCA-C_COMPRESS_DLL_COMMAND_LINE ;;Need to OVERRIDE value (we couldn't do it earler or GetFullBuildTimeFileName wouldn't exist!) ;--- I expect upx.exe to be in the PATH environment variable ??@@UpxFile;;Full name of UPX.EXE (get from http://upx.sourceforge.net/;) ;--- I want highest compression - --best ;--- Backup the DLL as a debugging aid... --- -k #) #endif On Thu, Dec 9, 2010 at 1:20 PM, Castro, Edwin G. (Hillsboro) edwin.cas...@fiserv.com wrote: How exactly do you get MakeMSI to do use LZMA compression? I was intrigued by the question so I looked for and installed MakeMSI but I can't find any references to LZMA compression. Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail -Original Message- From: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: Wednesday, December 08, 2010 5:53 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Using LZMA instead of default compression Is that how MakeMSI does it? I don't see why you can't implement upx into Burn... On Thu, Dec 9, 2010 at 3:56 AM, Pally Sandher pally.sand...@iesve.com wrote: Been asked before (many many times, see nabble or mail-archive.com). Unless Windows Installer supports it, it's unlikely for WiX to support it. In this case you're limited by the Cabinet API if you want to ship purely MSI's. Cabinets are either LZX or MSZIP algorithm compression. If you want to implement something like LZMA yourself then you can do something like specifying no compression in your Media Elements then compress the resulting MSI CABs using a self-extractor. Burn other bootstrappers may support something like that but WiX itself doesn't/can't. 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: Alec Taylor [mailto:alec.tayl...@gmail.com] Sent: 08 December 2010 16:32 To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Using LZMA instead of default compression Hi I've been using MakeMSI for a while now, and it's great that it uses LZMA [through http://upx.sourceforge.net/], as it offers an excellent compressions ratio with a fast decompression. Can the same be done with WiX? - If so, how? Please tell me if this can be done Thank you, Alec Taylor -- -- -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Post Build Title
Hello, I am having a small problem cleaning up the MSI that I am building through WIX. Even though I have 'Name=' set to the proper name of the product in the XML file the Title after building the MSI is the default Installation Database. I was hoping someone might have some suggestions. Thank you, Chris -- This SF Dev2Dev email is sponsored by: WikiLeaks The End of the Free Internet http://p.sf.net/sfu/therealnews-com ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users