Re: [WiX-users] Modify Components w/Conditionals
What are my options to proceed with this then to behave like I'd like? Is there a way to force individual components to reinstall, to force the checking of the Condition /? Can I conditionally change the install state of a component, rather than using a Condition / to drive it? Then rather than setting a property I flop the states of the Component /? Rather than being in the same Feature /, should they be individual ones that I someone make them mutually exclusive of one another? On Tue, Apr 15, 2014 at 5:53 PM, Phill Hogland phogl...@rimage.com wrote: Yes, I suspect Bob has explained it. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Modify-Components-w-Conditionals-tp7594143p7594155.html Sent from the wix-users mailing list archive at Nabble.com. -- 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 -- 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
Re: [WiX-users] Modify Components w/Conditionals
Yeah, the bitness was just used as an example. In reality, they are DMS client DLLs (OnBase). You can either choose Version 12 or Version 13 in the installer, so depending on which one they choose, the src value is different, but the name of the files are the same :( We tried the Feature / route, which almost work, except for this: If I have Feature A and Feature B, if I install A first. Then decide I want B, it's fine, because it removes A and then adds B. However, if I initially did B and went to A, it's a problembecause the order of operations is that it installs B in this case, but then removes A. And since the file names are the same, the end result is that it gets removed. On Wed, Apr 16, 2014 at 2:58 PM, Phil Wilson phildgwil...@gmail.com wrote: A general comment, without knowing exactly what the requirements are, and if you really are doing different bitness files in a single MSI, different packages are recommended for different architectures. Heath's article: http://blogs.msdn.com/b/heaths/archive/2008/01/15/different-packages-are-required-for-different-processor-architectures.aspx Having said that, it looks like you'd need to mark the components transitive so they would depend on the dynamic property values, and force a repair, maybe not the best user experience if that matters, unless you can drive it with a separate friendly executable. --- Phil Wilson On Wed, Apr 16, 2014 at 8:50 AM, Levi Wilson l...@leviwilson.com wrote: What are my options to proceed with this then to behave like I'd like? Is there a way to force individual components to reinstall, to force the checking of the Condition /? Can I conditionally change the install state of a component, rather than using a Condition / to drive it? Then rather than setting a property I flop the states of the Component /? Rather than being in the same Feature /, should they be individual ones that I someone make them mutually exclusive of one another? On Tue, Apr 15, 2014 at 5:53 PM, Phill Hogland phogl...@rimage.com wrote: Yes, I suspect Bob has explained it. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Modify-Components-w-Conditionals-tp7594143p7594155.html Sent from the wix-users mailing list archive at Nabble.com. -- 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 -- 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 -- 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 -- 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] Modify Components w/Conditionals
We have some components that are the same file names but different DLLs. For the sake of the example, let's say they're x86 vs. x64 versions of a file. Here is what the feature looks like: Feature Id=ServicesFeature Feature Id=PrintServiceFeature ComponentGroupRef Id=PrintComponents / /Feature /Feature ComponentGroup Id=PrintComponents ComponentGroupRef Id=ArchitectureBasedPrintComponents / /ComponentGroup ComponentGroup Id=ArchitectureBasedPrintComponents Component Id=SomeFile_x86 Condition![CDATA[IS_X86 = 1]]/Condition File Id=SomeFile_x86_dll Source=x86\SomeFile.dll / /Component Component Id=SomeFile_x64 Condition![CDATA[IS_X86 1]]/Condition File Id=SomeFile_x64_dll Source=x64\SomeFile.dll / /Component /ComponentGroup The Condition / elements for either the x86/x64 properly honors the IS_X86property. However, through ARP when you Change the application by going through the UI sequence and choosing the other architecture (for the sake of this example), it does not install the correct DLL. So, if you had initially installed the x86 copy, when you go through the Change and tell it x64, the x64 DLL does not get installed. I'm sure it's something obvious, but I'm not verse enough with how Windows Installer handles this situation. Thanks in advance, Levi -- 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
Re: [WiX-users] Modify Components w/Conditionals
Hmmm, it does not seem to be changing the file. Would Bob's comment have anything to do with it I wonder? http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Component-installation-status-not-affected-by-condition-tp5562579p5572902.html On Tue, Apr 15, 2014 at 4:33 PM, Phill Hogland phogl...@rimage.com wrote: As I understand it component conditions are only evaluated the first time the component is installed. If you want them to be evaluated again later they need to be marked as transitive. -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Modify-Components-w-Conditionals-tp7594143p7594148.html Sent from the wix-users mailing list archive at Nabble.com. -- 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 -- 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
Re: [WiX-users] C# Custom Actions - Renaming Functions
Gotcha. Yeah, I'm unsure as to what is going on. I tried this in a sample project and was unable to reproduce it. The only difference I can think of is the original C# CA project was created with WiX 3.7, but we're on WiX 3.8 now. I created my sample project with 3.8. Other than that, I'm out of ideas as everything looks correct. On Thu, Mar 20, 2014 at 9:27 AM, John Cooper jocoo...@jackhenry.com wrote: Yes, you'd need to change the entry point (in that one place), but the rest of you installer code would remain the same. The CustomAction@Iddoes not have to equal the CustomAction@DllEntry. That was the point. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 5:11 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions - Renaming Functions John, I'm not following. I renamed the C# method that has the [CustomAction] attribute on it, so shouldn't that change the DllEntry value in the CustomAction / element? On Wed, Mar 19, 2014 at 6:02 PM, John Cooper jocoo...@jackhenry.com wrote: Is is you. The entry point can be re-used with a new Id: CustomAction Id=CallMeByThisName BinaryKey=MYCA DllEntry=MyCSharpEntryPoint Execute=immediate / CustomAction Id=CallMeByAnotherName BinaryKey=MYCA DllEntry=MyCSharpEntryPoint Execute=immediate / -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 4:53 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] C# Custom Actions - Renaming Functions Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech
Re: [WiX-users] how to tell if running in uninstall mode
What are you trying to do? On Thu, Mar 20, 2014 at 5:19 PM, Harold Wood (H10 Capital) v-wow...@microsoft.com wrote: How do I get the value? -Original Message- From: John Cooper [mailto:jocoo...@jackhenry.com] Sent: Thursday, March 20, 2014 2:10 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] how to tell if running in uninstall mode What is the value of the REMOVE property? If it is All, you are uninstalling the whole product. -- 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: Harold Wood (H10 Capital) [mailto:v-wow...@microsoft.com] Sent: Thursday, March 20, 2014 3:44 PM To: General discussion about the WiX toolset. Subject: [WiX-users] how to tell if running in uninstall mode How can I tell if my installer is running in uninstall mode? Thanks Woody -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] CA Condition on Major Upgrade
I'm having trouble wrapping my head around scheduling a custom action of mine. I want to run the CA on these conditions: - it's the first time installing - on the INSTALL portion of a major upgrade - NOT on the remove portion of the major upgrade - NOT during an uninstall I have my condition set to this: InstallExecuteSequence Custom Action=MyCustomActionId Before=LaunchConditions![CDATA[NOT Installed OR UPGRADINGPRODUCTCODE]]/Custom /InstallExecuteSequence What am I missing here? This _seems_ to be running during the uninstall of the previous existing product (my CA fails because the properties seem to not be correct). Thanks in advance, Levi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] CA Condition on Major Upgrade
It looks like I need to change to: (NOT Installed) OR (NOT UPGRADINGPRODUCTCODE AND REMOVEALL) I will verify :) Thank you! On Wed, Mar 19, 2014 at 11:20 AM, Tobias S tobias.s1...@gmail.com wrote: a good summary of conditions can be found in the http://blogs.flexerasoftware.com/installtalk/2013/04/installer-cheat-sheet-series.html(Common MSI Conditions Cheat Sheet - http://www.flexerasoftware.jp/webdocuments/PDF/IS-CHS-Common-MSI-Conditions.pdf ) or on e.g. http://stackoverflow.com/questions/320921/how-to-add-a-wix-custom-action-that-happens-only-on-uninstall-via-msi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] CA Condition on Major Upgrade
If I could kiss you, I would. THANKS! On Wed, Mar 19, 2014 at 11:20 AM, Tobias S tobias.s1...@gmail.com wrote: a good summary of conditions can be found in the http://blogs.flexerasoftware.com/installtalk/2013/04/installer-cheat-sheet-series.html(Common MSI Conditions Cheat Sheet - http://www.flexerasoftware.jp/webdocuments/PDF/IS-CHS-Common-MSI-Conditions.pdf ) or on e.g. http://stackoverflow.com/questions/320921/how-to-add-a-wix-custom-action-that-happens-only-on-uninstall-via-msi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] UI on uninstall
That wouldn't work for a silent installation if you did it across the network, would it? I think you'd end up with a dialog box that you couldn't do anything with. I could be wrong. On Wed, Mar 19, 2014 at 1:54 PM, Pavan Konduru pavan.kond...@accelrys.comwrote: Hi Harold, The uninstall cannot have standard Wix Dialogs from what I know. We had a similar requirement and I used a custom action (c#) to pop-up a OK message box. Something like this. Schedule this action only during uninstall(REMOVE=ALL) in the installExecute sequence. [CustomAction] public static ActionResult UsrDelPrompt(Session session) { string location = session[CustomActionData]; session.Log(location); DialogResult dialogResult = MessageBox.Show(new Form() { TopMost = true }, Message box content + Environment.NewLine + location, Header message for box, MessageBoxButtons.OK); return ActionResult.Success; } -Original Message- From: Harold Wood (H10 Capital) [mailto:v-wow...@microsoft.com] Sent: Wednesday, March 19, 2014 10:25 AM To: General discussion about the WiX toolset. Subject: [WiX-users] UI on uninstall I need to throw a message on the screen during uninstall. How do I do that? Thanks Woody -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] C# Custom Actions - Renaming Functions
Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] C# Custom Actions - Renaming Functions
Yes, I actually started by using ReSharper to rename my CA method, as I have unit tests around all of them. After that I updated all of my wxs files so that they are correct. I backed out the changes for now, but I can try it again later to see what the full log is. I may be able to put together a sample app to illustrate it on GitHub or something. Thanks, Levi On Wed, Mar 19, 2014 at 6:00 PM, Hoover, Jacob jacob.hoo...@greenheck.comwrote: I assume you've also modified your C# CustomAction to include the updated name and rebuilt it? Do you have a full log available (or at least some of the lines before that where the CA is being extracted). If need be, one could peek into the temp file after extraction and ensure it's using the updated assembly. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 4:53 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] C# Custom Actions - Renaming Functions Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] C# Custom Actions - Renaming Functions
John, I'm not following. I renamed the C# method that has the [CustomAction] attribute on it, so shouldn't that change the DllEntry value in the CustomAction / element? On Wed, Mar 19, 2014 at 6:02 PM, John Cooper jocoo...@jackhenry.com wrote: Is is you. The entry point can be re-used with a new Id: CustomAction Id=CallMeByThisName BinaryKey=MYCA DllEntry=MyCSharpEntryPoint Execute=immediate / CustomAction Id=CallMeByAnotherName BinaryKey=MYCA DllEntry=MyCSharpEntryPoint Execute=immediate / -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 4:53 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] C# Custom Actions - Renaming Functions Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] C# Custom Actions - Renaming Functions
John, I did not clear out my temp directories. I assumed everything it built would be underneath my project. I can try though. I did export from Orca and used `dumpbin` to view the exported functions. My newly named method was there. On Wed, Mar 19, 2014 at 7:09 PM, John Ludlow john.ludlow...@gmail.comwrote: This may be a silly question, but have you also cleared out your temp directories? Also, did you I think it should be possible to export the DLL using Orca to a file on disk, and then examine it to see what exported functions it has (say, with Dependency Walker). This should settle the question of whether it's the exported function that's the issue or something else. On 19 March 2014 22:07, Levi Wilson l...@leviwilson.com wrote: Yes, I actually started by using ReSharper to rename my CA method, as I have unit tests around all of them. After that I updated all of my wxs files so that they are correct. I backed out the changes for now, but I can try it again later to see what the full log is. I may be able to put together a sample app to illustrate it on GitHub or something. Thanks, Levi On Wed, Mar 19, 2014 at 6:00 PM, Hoover, Jacob jacob.hoo...@greenheck.comwrote: I assume you've also modified your C# CustomAction to include the updated name and rebuilt it? Do you have a full log available (or at least some of the lines before that where the CA is being extracted). If need be, one could peek into the temp file after extraction and ensure it's using the updated assembly. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 4:53 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] C# Custom Actions - Renaming Functions Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users
Re: [WiX-users] C# Custom Actions - Renaming Functions
Cached as in c:\Windows\Installer cached? I uninstalled my previous app to see if a fresh install would do it as well...same problem. On Thu, Mar 20, 2014 at 12:54 AM, Rob Mensching r...@firegiant.com wrote: Maybe cached MSI? ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 9:46 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions - Renaming Functions John, I did not clear out my temp directories. I assumed everything it built would be underneath my project. I can try though. I did export from Orca and used `dumpbin` to view the exported functions. My newly named method was there. On Wed, Mar 19, 2014 at 7:09 PM, John Ludlow john.ludlow...@gmail.com wrote: This may be a silly question, but have you also cleared out your temp directories? Also, did you I think it should be possible to export the DLL using Orca to a file on disk, and then examine it to see what exported functions it has (say, with Dependency Walker). This should settle the question of whether it's the exported function that's the issue or something else. On 19 March 2014 22:07, Levi Wilson l...@leviwilson.com wrote: Yes, I actually started by using ReSharper to rename my CA method, as I have unit tests around all of them. After that I updated all of my wxs files so that they are correct. I backed out the changes for now, but I can try it again later to see what the full log is. I may be able to put together a sample app to illustrate it on GitHub or something. Thanks, Levi On Wed, Mar 19, 2014 at 6:00 PM, Hoover, Jacob jacob.hoo...@greenheck.comwrote: I assume you've also modified your C# CustomAction to include the updated name and rebuilt it? Do you have a full log available (or at least some of the lines before that where the CA is being extracted). If need be, one could peek into the temp file after extraction and ensure it's using the updated assembly. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 19, 2014 4:53 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] C# Custom Actions - Renaming Functions Is it me, or is it impossible to rename a C# custom action function once you've built it? My wxs files are correct to reflect the new name. I have verified that the binary file that is in there has the newly named method after I build it (I saved it from Orca and did `dumpbin saved.dll /EXPORTS` to see it). However, when I go to run the install I get: Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action ValidateSQLAdminCredentials, entry: ValidateSQLAdminCredentials, library: C:\Users\VMWARE~1\AppData\Local\Temp\MSI8F83.tmp The one that is reflected isn't even the one that I renamed, but that would be the first time it tried to load my DLL. I've cleared out my bin and obj directories in my CA project as well as my installer project. What am I missing or where can I look to help troubleshoot? I'm using Wix 3.8 -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Learn Graph Databases - Download FREE O'Reilly Book Graph Databases is the definitive new guide to graph databases and their applications. Written by three
Re: [WiX-users] Suppress ICE Validation for a Specific Table
That's not per table though, that's per ICE error. I think the FK on the SqlDatabase for User_ needs to be removed. On Mar 14, 2014 10:42 AM, Wesley Manning wmann...@dynagen.ca wrote: Yes, right click on project and select properties. In there there's a Tools Setting tab with ICE verification. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-13-14 4:38 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Suppress ICE Validation for a Specific Table Is it possible to suppress ICE validation for a particular table? The reason I'm asking is because using a property to set the SqlDatabase\@User attribute results in an ICE30 (seemingly) incorrectly. I'd like to tell it to not do ICE validation on the SqlDatabase table, rather than for everything. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Bryan, You mentioned that you can definitely modify the in-memory database. Can you elaborate on this? I'd like to do something like this: session.Database.Execute(UPDATE `SqlDatabase` SET `SqlDatabase`.`User_` = NULL) But this fails with 'Function failed during execution. Database: Table(s) Update failed.'. On Thu, Mar 13, 2014 at 10:57 AM, Bryan Wolf brw...@jackhenry.com wrote: The core of this issue might be that you're trying to create the database. But while the WiX SQL Custom Actions are good for one-offs like what John wrote, I think you'll find them not adequate for modern day database apps - especially in the creation world - unless you're creating some type of super simplistic database. You're probably going to be happier using a sqldatabase project and integrating your SQL as a script with DB Rollback and transactions plus batch execution. SQLPackage is already slow enough, but SQL String seems to get really bogged down after more than 100 or so scripts, which in a decent sized database shows up fast. At any rate, you can definitely modify the in-memory database. I've done it - not proud of it - but you have to make sure your custom action re-does that every time you launch. What you practically cannot do is save the in-memory database (you technically can but it's not going to be the one that gets cached unless you write a CA to update cache lists). Regardless, even if you can't get much developer buy-in it's probably going to be way less effort for someone to learn SQL Server, learn how sql databases work, learn how SQLProj works, and then build the sqlcmdvar interface and any CAs to populate them than it is going to be to get anything more than trivial database deployed in a maintainable fashion. (Not to say SQLString is the worst thing ever - it's great for ad-hoc things like running a single sp or something; it's just not a suitable database deployment tool) -Original Message- From: Wesley Manning [mailto:wmann...@dynagen.ca] Sent: Thursday, March 13, 2014 9:08 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Yes you're correct. I missed that part. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-13-14 10:33 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript You can add to the MSI database, but as near as I can tell you cannot UPDATE the MSI database :( On Thu, Mar 13, 2014 at 9:09 AM, Wesley Manning wmann...@dynagen.ca wrote: Actually you can modify the MSI at runtime, at least its database. Don't know if you can modify the embedded files. Semi-custom action: http://www.joyofsetup.com/2007/07/01/semi-custom-actions/. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-12-14 7:19 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.com wrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- John Merryweather Cooper Build Install Engineer - ESA Jack
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
You can add to the MSI database, but as near as I can tell you cannot UPDATE the MSI database :( On Thu, Mar 13, 2014 at 9:09 AM, Wesley Manning wmann...@dynagen.ca wrote: Actually you can modify the MSI at runtime, at least its database. Don't know if you can modify the embedded files. Semi-custom action: http://www.joyofsetup.com/2007/07/01/semi-custom-actions/. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-12-14 7:19 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.com wrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.(r) Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com www.jackhenry.com -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 12, 2014 4:03 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript This leads me to believe that I should be able to do this? http://sourceforge.net/p/wix/bugs/626/ On Wed, Mar 12, 2014 at 4:19 PM, Levi Wilson l...@leviwilson.com wrote: John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.com wrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.(r) Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Anyone ever used these WiX extensions? http://dblock.github.io/msiext/ On Thu, Mar 13, 2014 at 9:32 AM, Levi Wilson l...@leviwilson.com wrote: You can add to the MSI database, but as near as I can tell you cannot UPDATE the MSI database :( On Thu, Mar 13, 2014 at 9:09 AM, Wesley Manning wmann...@dynagen.cawrote: Actually you can modify the MSI at runtime, at least its database. Don't know if you can modify the embedded files. Semi-custom action: http://www.joyofsetup.com/2007/07/01/semi-custom-actions/. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-12-14 7:19 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.com wrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- John Merryweather Cooper Build Install Engineer - ESA Jack Henry Associates, Inc.(r) Shawnee Mission, KS 66227 Office: 913-341-3434 x791011 jocoo...@jackhenry.com www.jackhenry.com -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 12, 2014 4:03 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript This leads me to believe that I should be able to do this? http://sourceforge.net/p/wix/bugs/626/ On Wed, Mar 12, 2014 at 4:19 PM, Levi Wilson l...@leviwilson.com wrote: John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.com wrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- John Merryweather Cooper Build
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Bryan, Thanks for your response. This is definitely what it is starting to feel like. Awhile back John had mentioned that this is how he does his database deployments. My installer may be ran on a server that doesn't have SSDT. Do you support this in your installers and if so, what pattern do you use to use SqlPackage.exe on a machine that may not have it? Levi On Thu, Mar 13, 2014 at 10:57 AM, Bryan Wolf brw...@jackhenry.com wrote: The core of this issue might be that you're trying to create the database. But while the WiX SQL Custom Actions are good for one-offs like what John wrote, I think you'll find them not adequate for modern day database apps - especially in the creation world - unless you're creating some type of super simplistic database. You're probably going to be happier using a sqldatabase project and integrating your SQL as a script with DB Rollback and transactions plus batch execution. SQLPackage is already slow enough, but SQL String seems to get really bogged down after more than 100 or so scripts, which in a decent sized database shows up fast. At any rate, you can definitely modify the in-memory database. I've done it - not proud of it - but you have to make sure your custom action re-does that every time you launch. What you practically cannot do is save the in-memory database (you technically can but it's not going to be the one that gets cached unless you write a CA to update cache lists). Regardless, even if you can't get much developer buy-in it's probably going to be way less effort for someone to learn SQL Server, learn how sql databases work, learn how SQLProj works, and then build the sqlcmdvar interface and any CAs to populate them than it is going to be to get anything more than trivial database deployed in a maintainable fashion. (Not to say SQLString is the worst thing ever - it's great for ad-hoc things like running a single sp or something; it's just not a suitable database deployment tool) -Original Message- From: Wesley Manning [mailto:wmann...@dynagen.ca] Sent: Thursday, March 13, 2014 9:08 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Yes you're correct. I missed that part. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-13-14 10:33 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript You can add to the MSI database, but as near as I can tell you cannot UPDATE the MSI database :( On Thu, Mar 13, 2014 at 9:09 AM, Wesley Manning wmann...@dynagen.ca wrote: Actually you can modify the MSI at runtime, at least its database. Don't know if you can modify the embedded files. Semi-custom action: http://www.joyofsetup.com/2007/07/01/semi-custom-actions/. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-12-14 7:19 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.com wrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- John
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
I took a look at them; there is a LOT of logic around the parsing (removing comments, replacing GO to be able to do batch like SQL) but it looked like a decent amount of effort that I wasn't comfortable with without a unit test suite around it. Maybe I'll revisit it again at some point. Thanks for the info guys. I'll look into packaging the SqlPackage dependencies in our installer. Thanks! Levi On Thu, Mar 13, 2014 at 11:45 AM, Rob Mensching r...@firegiant.com wrote: Note: the SQL Custom Actions in the WiX toolset could be improved if someone made an effort to work on them directly. Until then the performance problems will remain. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Bryan Wolf [mailto:brw...@jackhenry.com] Sent: Thursday, March 13, 2014 8:32 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Well, the approach we take is packaging SSDT in the installer and shipping it around. The sqlpackage.exe binary is quite small and has only a couple of dependencies. If this is a gray area for you, tbh I would consider putting the SSDT downloads as a part of your deployment package in some way. You can't really point to Microsoft's servers I believe, but re-hosting a download or making them a dependency definitely seems within the license. We ship the following dependencies Microsoft.Data.Tools.Schema.Sql.dll Microsoft.Data.Tools.Utilities.dll Microsoft.SqlServer.Dac.dll Microsoft.SqlServer.TransactSql.ScriptDom.dll SqlPackage.exe And then you'll want to get the master and mdb dacpacs for each version of supported VS from your build or development servers: http://social.msdn.microsoft.com/forums/sqlserver/en-US/53fa04eb-aa6d-4eb9-ab4d-0f27b55d28e7/msbuild-and-master-dacpac Include all that in the binary table with a nice CA to extract everything and bob's your uncle! :-) But every environment is going to look differently upon that. Regardless, SSDT is probably a worthy venture to solve - especially if your scope of supported versions of VS are small. Thanks, Bryan -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 10:13 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Bryan, Thanks for your response. This is definitely what it is starting to feel like. Awhile back John had mentioned that this is how he does his database deployments. My installer may be ran on a server that doesn't have SSDT. Do you support this in your installers and if so, what pattern do you use to use SqlPackage.exe on a machine that may not have it? Levi On Thu, Mar 13, 2014 at 10:57 AM, Bryan Wolf brw...@jackhenry.com wrote: The core of this issue might be that you're trying to create the database. But while the WiX SQL Custom Actions are good for one-offs like what John wrote, I think you'll find them not adequate for modern day database apps - especially in the creation world - unless you're creating some type of super simplistic database. You're probably going to be happier using a sqldatabase project and integrating your SQL as a script with DB Rollback and transactions plus batch execution. SQLPackage is already slow enough, but SQL String seems to get really bogged down after more than 100 or so scripts, which in a decent sized database shows up fast. At any rate, you can definitely modify the in-memory database. I've done it - not proud of it - but you have to make sure your custom action re-does that every time you launch. What you practically cannot do is save the in-memory database (you technically can but it's not going to be the one that gets cached unless you write a CA to update cache lists). Regardless, even if you can't get much developer buy-in it's probably going to be way less effort for someone to learn SQL Server, learn how sql databases work, learn how SQLProj works, and then build the sqlcmdvar interface and any CAs to populate them than it is going to be to get anything more than trivial database deployed in a maintainable fashion. (Not to say SQLString is the worst thing ever - it's great for ad-hoc things like running a single sp or something; it's just not a suitable database deployment tool) -Original Message- From: Wesley Manning [mailto:wmann...@dynagen.ca] Sent: Thursday, March 13, 2014 9:08 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Yes you're correct. I missed that part. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: March-13-14 10:33 AM To: General discussion about the WiX toolset. Subject: Re
[WiX-users] Suppress ICE Validation for a Specific Table
Is it possible to suppress ICE validation for a particular table? The reason I'm asking is because using a property to set the SqlDatabase\@User attribute results in an ICE30 (seemingly) incorrectly. I'd like to tell it to not do ICE validation on the SqlDatabase table, rather than for everything. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Welp, it looks like this actually _does_ work*. * You get an ICE03 error every time when you FIRST build it. If you build it again, it doesn't get it (assuming it didn't do the validation again?). So it seems like my only recourse is to turn off ICE03 validations? That does not seem desirable, but it DOES work and I can then define things like this: Property Id=SQL_USER Value=SQLUser / util:User Id='SQLUser' Name='[SQL_USERNAME]' Password='[SQL_PASSWORD]' / sql:SqlDatabase Id=SqlDatabase Database=[SQL_DATABASE] Server=[SQL_SERVER] User=[SQL_USER] / Obviously, ICE03 because [SQL_USER] does not exist in the User table :( On Thu, Mar 13, 2014 at 12:33 PM, Bryan Wolf brw...@jackhenry.com wrote: Yes - there's no question about that and I don't mean to imply otherwise (though likely I did). I am currently opposed to that model of db deployment, though, so I am not going to be much of a candidate :-) I'm sure others have other opinions on the topic though. Perhaps I could be swayed. I also don't really buy in to the code-first methodology for databases either. I'm a tad of a purist I guess, haha. -Original Message- From: Rob Mensching [mailto:r...@firegiant.com] Sent: Thursday, March 13, 2014 10:46 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Note: the SQL Custom Actions in the WiX toolset could be improved if someone made an effort to work on them directly. Until then the performance problems will remain. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Bryan Wolf [mailto:brw...@jackhenry.com] Sent: Thursday, March 13, 2014 8:32 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Well, the approach we take is packaging SSDT in the installer and shipping it around. The sqlpackage.exe binary is quite small and has only a couple of dependencies. If this is a gray area for you, tbh I would consider putting the SSDT downloads as a part of your deployment package in some way. You can't really point to Microsoft's servers I believe, but re-hosting a download or making them a dependency definitely seems within the license. We ship the following dependencies Microsoft.Data.Tools.Schema.Sql.dll Microsoft.Data.Tools.Utilities.dll Microsoft.SqlServer.Dac.dll Microsoft.SqlServer.TransactSql.ScriptDom.dll SqlPackage.exe And then you'll want to get the master and mdb dacpacs for each version of supported VS from your build or development servers: http://social.msdn.microsoft.com/forums/sqlserver/en-US/53fa04eb-aa6d-4eb9-ab4d-0f27b55d28e7/msbuild-and-master-dacpac Include all that in the binary table with a nice CA to extract everything and bob's your uncle! :-) But every environment is going to look differently upon that. Regardless, SSDT is probably a worthy venture to solve - especially if your scope of supported versions of VS are small. Thanks, Bryan -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 10:13 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Bryan, Thanks for your response. This is definitely what it is starting to feel like. Awhile back John had mentioned that this is how he does his database deployments. My installer may be ran on a server that doesn't have SSDT. Do you support this in your installers and if so, what pattern do you use to use SqlPackage.exe on a machine that may not have it? Levi On Thu, Mar 13, 2014 at 10:57 AM, Bryan Wolf brw...@jackhenry.com wrote: The core of this issue might be that you're trying to create the database. But while the WiX SQL Custom Actions are good for one-offs like what John wrote, I think you'll find them not adequate for modern day database apps - especially in the creation world - unless you're creating some type of super simplistic database. You're probably going to be happier using a sqldatabase project and integrating your SQL as a script with DB Rollback and transactions plus batch execution. SQLPackage is already slow enough, but SQL String seems to get really bogged down after more than 100 or so scripts, which in a decent sized database shows up fast. At any rate, you can definitely modify the in-memory database. I've done it - not proud of it - but you have to make sure your custom action re-does that every time you launch. What you practically cannot do is save the in-memory database (you technically can but it's not going to be the one that gets cached unless you write a CA to update cache lists). Regardless, even if you can't get much developer buy-in it's probably going to be way less effort for someone to learn
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Do you typically backfill fixes to older versions, or just fix them on the tip of master? On Thu, Mar 13, 2014 at 3:41 PM, Rob Mensching r...@firegiant.com wrote: Or fix WiX so the ICE03 error doesn't happen. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 12:36 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Welp, it looks like this actually _does_ work*. * You get an ICE03 error every time when you FIRST build it. If you build it again, it doesn't get it (assuming it didn't do the validation again?). So it seems like my only recourse is to turn off ICE03 validations? That does not seem desirable, but it DOES work and I can then define things like this: Property Id=SQL_USER Value=SQLUser / util:User Id='SQLUser' Name='[SQL_USERNAME]' Password='[SQL_PASSWORD]' / sql:SqlDatabase Id=SqlDatabase Database=[SQL_DATABASE] Server=[SQL_SERVER] User=[SQL_USER] / Obviously, ICE03 because [SQL_USER] does not exist in the User table :( On Thu, Mar 13, 2014 at 12:33 PM, Bryan Wolf brw...@jackhenry.com wrote: Yes - there's no question about that and I don't mean to imply otherwise (though likely I did). I am currently opposed to that model of db deployment, though, so I am not going to be much of a candidate :-) I'm sure others have other opinions on the topic though. Perhaps I could be swayed. I also don't really buy in to the code-first methodology for databases either. I'm a tad of a purist I guess, haha. -Original Message- From: Rob Mensching [mailto:r...@firegiant.com] Sent: Thursday, March 13, 2014 10:46 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Note: the SQL Custom Actions in the WiX toolset could be improved if someone made an effort to work on them directly. Until then the performance problems will remain. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Bryan Wolf [mailto:brw...@jackhenry.com] Sent: Thursday, March 13, 2014 8:32 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Well, the approach we take is packaging SSDT in the installer and shipping it around. The sqlpackage.exe binary is quite small and has only a couple of dependencies. If this is a gray area for you, tbh I would consider putting the SSDT downloads as a part of your deployment package in some way. You can't really point to Microsoft's servers I believe, but re-hosting a download or making them a dependency definitely seems within the license. We ship the following dependencies Microsoft.Data.Tools.Schema.Sql.dll Microsoft.Data.Tools.Utilities.dll Microsoft.SqlServer.Dac.dll Microsoft.SqlServer.TransactSql.ScriptDom.dll SqlPackage.exe And then you'll want to get the master and mdb dacpacs for each version of supported VS from your build or development servers: http://social.msdn.microsoft.com/forums/sqlserver/en-US/53fa04eb-aa6d- 4eb9-ab4d-0f27b55d28e7/msbuild-and-master-dacpac Include all that in the binary table with a nice CA to extract everything and bob's your uncle! :-) But every environment is going to look differently upon that. Regardless, SSDT is probably a worthy venture to solve - especially if your scope of supported versions of VS are small. Thanks, Bryan -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 10:13 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Bryan, Thanks for your response. This is definitely what it is starting to feel like. Awhile back John had mentioned that this is how he does his database deployments. My installer may be ran on a server that doesn't have SSDT. Do you support this in your installers and if so, what pattern do you use to use SqlPackage.exe on a machine that may not have it? Levi On Thu, Mar 13, 2014 at 10:57 AM, Bryan Wolf brw...@jackhenry.com wrote: The core of this issue might be that you're trying to create the database. But while the WiX SQL Custom Actions are good for one-offs like what John wrote, I think you'll find them not adequate for modern day database apps - especially in the creation world - unless you're creating some type of super simplistic database. You're probably going to be happier using a sqldatabase project and integrating your SQL as a script
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Which branch should it be on then? wix38, wix39 or wix40? I'm assuming wix38 since it's the currently available release. On Thu, Mar 13, 2014 at 4:01 PM, Rob Mensching r...@firegiant.com wrote: We don't re-release old versions of WiX toolset. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 12:53 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Do you typically backfill fixes to older versions, or just fix them on the tip of master? On Thu, Mar 13, 2014 at 3:41 PM, Rob Mensching r...@firegiant.com wrote: Or fix WiX so the ICE03 error doesn't happen. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 12:36 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Welp, it looks like this actually _does_ work*. * You get an ICE03 error every time when you FIRST build it. If you build it again, it doesn't get it (assuming it didn't do the validation again?). So it seems like my only recourse is to turn off ICE03 validations? That does not seem desirable, but it DOES work and I can then define things like this: Property Id=SQL_USER Value=SQLUser / util:User Id='SQLUser' Name='[SQL_USERNAME]' Password='[SQL_PASSWORD]' / sql:SqlDatabase Id=SqlDatabase Database=[SQL_DATABASE] Server=[SQL_SERVER] User=[SQL_USER] / Obviously, ICE03 because [SQL_USER] does not exist in the User table :( On Thu, Mar 13, 2014 at 12:33 PM, Bryan Wolf brw...@jackhenry.com wrote: Yes - there's no question about that and I don't mean to imply otherwise (though likely I did). I am currently opposed to that model of db deployment, though, so I am not going to be much of a candidate :-) I'm sure others have other opinions on the topic though. Perhaps I could be swayed. I also don't really buy in to the code-first methodology for databases either. I'm a tad of a purist I guess, haha. -Original Message- From: Rob Mensching [mailto:r...@firegiant.com] Sent: Thursday, March 13, 2014 10:46 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Note: the SQL Custom Actions in the WiX toolset could be improved if someone made an effort to work on them directly. Until then the performance problems will remain. ___ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/ -Original Message- From: Bryan Wolf [mailto:brw...@jackhenry.com] Sent: Thursday, March 13, 2014 8:32 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Well, the approach we take is packaging SSDT in the installer and shipping it around. The sqlpackage.exe binary is quite small and has only a couple of dependencies. If this is a gray area for you, tbh I would consider putting the SSDT downloads as a part of your deployment package in some way. You can't really point to Microsoft's servers I believe, but re-hosting a download or making them a dependency definitely seems within the license. We ship the following dependencies Microsoft.Data.Tools.Schema.Sql.dll Microsoft.Data.Tools.Utilities.dll Microsoft.SqlServer.Dac.dll Microsoft.SqlServer.TransactSql.ScriptDom.dll SqlPackage.exe And then you'll want to get the master and mdb dacpacs for each version of supported VS from your build or development servers: http://social.msdn.microsoft.com/forums/sqlserver/en-US/53fa04eb-aa6 d- 4eb9-ab4d-0f27b55d28e7/msbuild-and-master-dacpac Include all that in the binary table with a nice CA to extract everything and bob's your uncle! :-) But every environment is going to look differently upon that. Regardless, SSDT is probably a worthy venture to solve - especially if your scope of supported versions of VS are small. Thanks, Bryan -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, March 13, 2014 10:13 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript Bryan, Thanks for your response. This is definitely what it is starting to feel like. Awhile back John had mentioned that this is how he does his
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.comwrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Tuesday, March 11, 2014 10:33 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I have a component that has multiple SqlScript / elements. In my dialog sequence I allow the user to choose whether or not they want to use SQL or Windows Authentication for the connection. Each SqlScript / references my SqlDatabase / that currently looks like this: util:User Id='SqlInstallerUserId' Name='[SQL_ADMIN_USERNAME]' Password='[SQL_ADMIN_PASSWORD]' / sql:SqlDatabase Id=CompassFrameworkDatabase Server=[SQL_SERVER] Database=[SQL_DATABASE] User=SqlInstallerUserId / The problem is that will never work with Windows Authentication :-) I've seen some have two different components that specified different SqlDatabase / elements, but I would rather not do that. Is there a way to basically clear the User_ record in the SqlDatabase table in the MSI to force it to use Windows Authentication depending on what the user chose in the dialog? Thanks in advance. Levi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
This leads me to believe that I should be able to do this? http://sourceforge.net/p/wix/bugs/626/ On Wed, Mar 12, 2014 at 4:19 PM, Levi Wilson l...@leviwilson.com wrote: John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.comwrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Tuesday, March 11, 2014 10:33 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I have a component that has multiple SqlScript / elements. In my dialog sequence I allow the user to choose whether or not they want to use SQL or Windows Authentication for the connection. Each SqlScript / references my SqlDatabase / that currently looks like this: util:User Id='SqlInstallerUserId' Name='[SQL_ADMIN_USERNAME]' Password='[SQL_ADMIN_PASSWORD]' / sql:SqlDatabase Id=CompassFrameworkDatabase Server=[SQL_SERVER] Database=[SQL_DATABASE] User=SqlInstallerUserId / The problem is that will never work with Windows Authentication :-) I've seen some have two different components that specified different SqlDatabase / elements, but I would rather not do that. Is there a way to basically clear the User_ record in the SqlDatabase table in the MSI to force it to use Windows Authentication depending on what the user chose in the dialog? Thanks in advance. Levi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- 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
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
Is there a way to make the database conditional? So define two databases that are the exact same thing, minus the @User attribute? I'm at a loss. On Wed, Mar 12, 2014 at 6:19 PM, Levi Wilson l...@leviwilson.com wrote: I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.comwrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 12, 2014 4:03 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript This leads me to believe that I should be able to do this? http://sourceforge.net/p/wix/bugs/626/ On Wed, Mar 12, 2014 at 4:19 PM, Levi Wilson l...@leviwilson.com wrote: John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.com wrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Tuesday, March 11, 2014 10:33 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I have a component that has multiple SqlScript / elements. In my dialog sequence I allow the user to choose whether or not they want to use SQL or Windows Authentication for the connection. Each SqlScript / references my SqlDatabase / that currently looks like
Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript
I tried this example; yours has the @User set on the SqlString / rather than the SqlDatabase /. I tried this, so I removed the @User from the SqlDatabase and added it to SqlScript instead...this looks like it ONLY uses Integrated Security (because of the absence of it on the SqlDatabase / and NEVER uses the SQL Authentication. This is aggravating that you cannot use something like @User=[SOME_USER_PROPERTY] and then have it evaluate it then :(. I feel like I HAVE to be missing something. The OTHER fix I can think of is to update the User_ field in the SqlDatabase table...but it doesn't appear that you can modify the MSI at runtime. On Wed, Mar 12, 2014 at 5:43 PM, John Cooper jocoo...@jackhenry.com wrote: Well, I had only one product that deploys using sql:SqlDatabase, and it has recently converted to SqlPackage. Here's a sampling of the code I use which has been tested under both Windows and SQL Authentication on several products for over two years: Fragment PropertyRef Id=SQL_SERVERNAME / PropertyRef Id=SQL_USERNAME / PropertyRef Id=SQL_PASSWORD / util:User Id=DbUser Name=[SQL_USERNAME] Password=[SQL_PASSWORD] / sql:SqlDatabase Id=DbProduct Database=Product Server=[SQL_SERVERNAME] / /Fragment Fragment PropertyRef Id=SQL_DEPLOY_DATABASE / PropertyRef Id=SQL_RECOVERY_SIMPLE / DirectoryRef Id=INSTALLLOCATION Component Id=CmpProductRecoveryFull Guid=PUT-GUID-HERE KeyPath=yes Condition![CDATA[NOT SQL_RECOVERY_SIMPLE AND SQL_DEPLOY_DATABASE]]/Condition sql:SqlString Id=SqlRecoveryAsFull ExecuteOnInstall=yes SqlDb=DbProduct User=DbUser SQL=ALTER DATABASE Product SET RECOVERY FULL/ /Component /DirectoryRef /Fragment -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Wednesday, March 12, 2014 4:03 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript This leads me to believe that I should be able to do this? http://sourceforge.net/p/wix/bugs/626/ On Wed, Mar 12, 2014 at 4:19 PM, Levi Wilson l...@leviwilson.com wrote: John, how were you able to accomplish this? I tried to explicitly do this like so: Property Id=EMPTY_USER / Property Id=EMPTY_PASSWORD / util:User Id='SqlInstallerUserId' Name='[EMPTY_USER]' Password='[EMPTY_PASSWORD]' / Doing so yields ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' in the output log, and the EMPTY_USER and EMPTY_PASSWORD do not even show up (because they were never set). I'm not sure how to get them to evaluate to empty, but I thought that would suffice. Since it did not, then I tried this: Property Id=EMPTY_USER Value=something / Property Id=EMPTY_PASSWORD Value=something / SetProperty Id=EMPTY_USER After=AppSearch Value= / SetProperty Id=EMPTY_PASSWORD After=AppSearch Value= / In the output log, I see the original property values, then when it sets them to empty it says it's Deleting the properties because their values are empty, and I still get the same error: ExecuteSqlStrings: Error 0x80040e4d: failed to connect to database: 'my database' I have a feeling I'm missing something simple. Additionally, I thought I would be able to set the User_ column of the SqlDatabase table to a NULL to try to get that to happen, but apparently you can't modify a value in the MSI database at runtime? Thanks in advance, Levi On Tue, Mar 11, 2014 at 11:42 AM, John Cooper jocoo...@jackhenry.com wrote: Yes. In your case, if SQL_ADMIN_USERNAME and SQL_ADMIN_PASSWORD both evaluate to empty-string, then the sql:SqlDatabase will deploy with Windows Authentication. I use this pattern all the time. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Tuesday, March 11, 2014 10:33 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Conditional SSPI / SQL Authentication on SqlScript I have a component that has multiple SqlScript / elements. In my dialog sequence I allow the user to choose whether or not they want to use SQL or Windows Authentication for the connection. Each SqlScript / references my SqlDatabase / that currently looks like this: util:User Id='SqlInstallerUserId' Name='[SQL_ADMIN_USERNAME]' Password='[SQL_ADMIN_PASSWORD]' / sql:SqlDatabase Id=CompassFrameworkDatabase Server=[SQL_SERVER] Database=[SQL_DATABASE] User
[WiX-users] Conditional SSPI / SQL Authentication on SqlScript
I have a component that has multiple SqlScript / elements. In my dialog sequence I allow the user to choose whether or not they want to use SQL or Windows Authentication for the connection. Each SqlScript / references my SqlDatabase / that currently looks like this: util:User Id='SqlInstallerUserId' Name='[SQL_ADMIN_USERNAME]' Password='[SQL_ADMIN_PASSWORD]' / sql:SqlDatabase Id=CompassFrameworkDatabase Server=[SQL_SERVER] Database=[SQL_DATABASE] User=SqlInstallerUserId / The problem is that will never work with Windows Authentication :-) I've seen some have two different components that specified different SqlDatabase / elements, but I would rather not do that. Is there a way to basically clear the User_ record in the SqlDatabase table in the MSI to force it to use Windows Authentication depending on what the user chose in the dialog? Thanks in advance. Levi -- 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/13534_NeoTech ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] how to pass values from command line to wix installer
You can use something like this: iis:WebDirProperties Id=webdir AnonymousAccess='[PASSED_IN_VALUE]'/ And then when you run your installer: msiexec /i YourMsi.msi /l*vx output.log PASSED_IN_VALUE='value passed' the /l*vx will log the install to a file. From there you can see what value PASSED_IN_VALUE gets. I didn't run this, but it should be pretty close to what you need. Levi On Tue, Feb 11, 2014 at 8:30 AM, Kiran Somisetty mr.svski...@gmail.comwrote: I have a requirement to pass values from the command line while installing the wix. I want to assign this to AnynymousAccess attribute. iis:WebDirProperties Id=webdir AnonymousAccess='value passed'/ Can you pls help me on this, I searched the documentation, but haven't got any clues. Kiran -- Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WiX Unit Testing
I'm not sure what most people do, but here is what I do: For my wxs file testing, I just use LINQ to XML and verify properties of certain things that I do not want to change (i.e. perMachine installs, etc.) I do the same for other types of things, like SQLScript (verify that the sequence is sequential, etc.). I know that Lux ( http://wixtoolset.org/documentation/manual/v3/overview/lux.html) is supposed to be able to do something like that, but I wanted clear assertions in my CI and using NUnit was what was most familiar to me. For my CustomActions we're using C#. For those, the Session object unfortunately is a sealed class. For that, I just wrote a SessionHelper object that wraps it, and in my unit tests I wrote a stub that acts like a Dictionarystring, object that I can fake properties and such, whether or not I've logged to it, etc. Other than that, you can write unit tests like you normally would in C#. That's what we have been using and it has worked out pretty well. YMMV. Cheers, Levi On Tue, Feb 11, 2014 at 12:08 PM, Williams, David (UBC) david.willi...@ubc.com wrote: Hello, I am new to the world of WiX, and installer in general. The major question that I have at this time is how to unit test both the WiX and the MSI that I create. Should I just setup a VM and try the installs there or what? How do you guys test these projects? Thanks for your attention. David * This e-mail message and any attachments contain confidential information. If you are not the intended recipient, you are hereby notified that disclosure, printing, copying, distribution, or the taking of any action in reliance on the contents of this electronic information is strictly prohibited. If you have received this e-mail message in error, please immediately notify the sender by reply message and then delete the electronic message and any attachments. Exclaimer Version 4.22 -- Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] WixUI_FeatureTree / Conditional Selections
If I have the following feature tree: . └── Custom Installation ├── Website Feature └── Services ├── Service That Always Gets Installed ├── Service If You Have MSSQL (mutually exclusive of Oracle) └── Service If You Have Oracle (mutually exclusive of MSSQL) In the Feature Tree dialog, you are able to individually select which features you would like installed. In my above fake example, I basically only want to install one of those services, depending on what type of database you have. What is the best way to achieve this? Would I have to have a dialog before this screen to have the use choose which database type they have? Is there an example of something similar? My Google Fu was unable to find an example of such a thing. Thanks in advance, Levi -- Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] WiXUI_FeatureTree
If I have the following feature tree: . └── Custom Installation ├── Website Feature └── Services ├── Service That Always Gets Installed ├── Service If You Have MSSQL (mutually exclusive of Oracle) └── Service If You Have Oracle (mutually exclusive of MSSQL) In the Feature Tree dialog, you are able to individually select which features you would like installed. In my above fake example, I basically only want to install one of those services, depending on what type of database you have. What is the best way to achieve this? Would I have to have a dialog before this screen to have the use choose which database type they have? Is there an example of something similar? My Google Fu was unable to find an example of such a thing. Thanks in advance, Levi p.s. - sorry if this is a repost, but it's been an hour and my original post has not gone through yet for some reason. -- Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WiXUI_FeatureTree
Agreed, thanks! And actually, in my contrived example, the service will get installed regardless (if they want), but which FILES get deployed will differ. That should be done at the Component level I think, driven off of the properties in #1 and only if you choose the Service That Does Database Stuff. So my tree would then look like this: . └── Custom Installation ├── Website Feature └── Services ├── Service That Always Gets Installed └── Service That Does Database Stuff And then have a dialog AFTER the feature tree to select either MSSQL or Oracle, but only if you have chosen to include Service That Does Database Stuff. Then if I have a MssqlFilesComponentGroup, the condition would be (ServiceThatDoesDatabaseStuffFeature) AND (DATABASE_FLAVOR=MSSQL) or something to that effect. And the same thing for the Oracle component. That sound about right? Thanks, Levi On Tue, Feb 4, 2014 at 12:11 PM, John Cooper jocoo...@jackhenry.com wrote: I would: 1) iron out how you will detect MSSQL and Oracle and set appropriate Property(s) 2) condition the Features for MSSQL and Oracle on the detect properties being set (and since you want only one, the conditions need to be mutually exclusive). Enable the Feature (and make it visible in the tree) if set, and disable the feature (hide it) when unset. 3) condition the components of each feature in a like manner. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Tuesday, February 4, 2014 11:05 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] WiXUI_FeatureTree If I have the following feature tree: . └── Custom Installation ├── Website Feature └── Services ├── Service That Always Gets Installed ├── Service If You Have MSSQL (mutually exclusive of Oracle) └── Service If You Have Oracle (mutually exclusive of MSSQL) In the Feature Tree dialog, you are able to individually select which features you would like installed. In my above fake example, I basically only want to install one of those services, depending on what type of database you have. What is the best way to achieve this? Would I have to have a dialog before this screen to have the use choose which database type they have? Is there an example of something similar? My Google Fu was unable to find an example of such a thing. Thanks in advance, Levi p.s. - sorry if this is a repost, but it's been an hour and my original post has not gone through yet for some reason. -- Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. -- Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] C# Custom Actions / SQL
Thanks for the responses guys, that helps a lot. John: do you have any blog posts or anything that speaks to how you're deploying databases and such with WiX with SqlPackage.exe? My other post talks about some of the pain I'm having with a very large SQL script (144k lines) and wondering if SqlPackage.exe would alleviate some of that. Thanks, Levi On Fri, Jan 24, 2014 at 12:53 AM, Blair Murri os...@live.com wrote: If they are not in DTF then the WiX toolset doesn’t provide them. It’s assumed that most of what drove you to managed code would already be in the Framework so there isn’t the same level of need to invent the wheel. Having said that, I like John’s reply. Cool system. I’ll have to remember that next time I’m faced with installers populating databases. Blair From: Levi Wilson Sent: Thursday, January 23, 2014 6:37 AM To: General discussion for Windows Installer XML toolset. Being out of the WiX installer world for a handful of years, I was used to writing all of my custom actions in C++. Getting back into this I noticed that it is now acceptable to write them in C# and the DTF. That being said, I have a custom action that is currently written in C++ that checks for the existence of a database as well as to verify if a particular table exists. For that, I am using the sqlutil.lib to make that easier. In C# custom actions, is there an equivalent or do most people just use SqlConnection / SqlCommand out of the .NET framework? Apologies if this is an obvious question, I just didn't want to re-invent the wheel if WiX had a helper library to assist with this. I didn't see any SQL related classes in DTF. Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] C# Custom Actions / SQL
Thanks! I was planning on only using it to do my initial schema setup, and have SqlScript do everything else. My current RedGate schema export is 144k and it takes 6 minutes for the C++ CA to parse it :( Just trying to figure out my options. On Fri, Jan 24, 2014 at 9:33 AM, John Cooper jocoo...@jackhenry.com wrote: Well, I'll see if I can throw something together. I can't expose the code, but I can describe the component custom actions and the table in enough detail to make it easy enough to re-implement. The one big gotcha is early releases of the SSDT had versions of SqlPackage.exe that lacked a provision to extend the timeout. This doesn't matter much on a remote deploy if you're only deploying one database, but if you're deploying several, you'll need to extend the timeout by setting a registry entry. We generally set it a 5 minutes (300 seconds) which may be overkill, but works for us. I recommend only use the October 2013 (or later) SSDT package. My technique deploys up to seven databases in this manner. I'm using it in production on eight products currently (and converting an additional product over to it that currently uses SqlScript/SqlString). I'll try to have something up on my blog by Monday. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Friday, January 24, 2014 8:21 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions / SQL Thanks for the responses guys, that helps a lot. John: do you have any blog posts or anything that speaks to how you're deploying databases and such with WiX with SqlPackage.exe? My other post talks about some of the pain I'm having with a very large SQL script (144k lines) and wondering if SqlPackage.exe would alleviate some of that. Thanks, Levi On Fri, Jan 24, 2014 at 12:53 AM, Blair Murri os...@live.com wrote: If they are not in DTF then the WiX toolset doesn't provide them. It's assumed that most of what drove you to managed code would already be in the Framework so there isn't the same level of need to invent the wheel. Having said that, I like John's reply. Cool system. I'll have to remember that next time I'm faced with installers populating databases. Blair From: Levi Wilson Sent: Thursday, January 23, 2014 6:37 AM To: General discussion for Windows Installer XML toolset. Being out of the WiX installer world for a handful of years, I was used to writing all of my custom actions in C++. Getting back into this I noticed that it is now acceptable to write them in C# and the DTF. That being said, I have a custom action that is currently written in C++ that checks for the existence of a database as well as to verify if a particular table exists. For that, I am using the sqlutil.lib to make that easier. In C# custom actions, is there an equivalent or do most people just use SqlConnection / SqlCommand out of the .NET framework? Apologies if this is an obvious question, I just didn't want to re-invent the wheel if WiX had a helper library to assist with this. I didn't see any SQL related classes in DTF. Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk
Re: [WiX-users] C# Custom Actions / SQL
I'm fine with using that to do both the schema and initial data deploy with the one method. What I'm unclear/fuzzy are the incremental changes/migrations that we do from release to release. Originally, this was my plan: http://nicholas.piasecki.name/blog/2009/09/running-update-sql-scripts-during-minor-upgrades-with-wix/ I still like the idea of that as it seems easier for me to grok. Thank you so much for your thoughts; you clearly have done this before ;-) On Fri, Jan 24, 2014 at 9:57 AM, John Cooper jocoo...@jackhenry.com wrote: There are disadvantages to using this mixed approach. Chief among them is that you inherit SqlScript/SqlString's limitations on default instances if SQL browsing is disabled. I've tested and SqlPackage does not have this limitation. That being said, we do have a mix (particularly to implement ALTER RECOVERY SIMPLE), but we're always moving to merge them back into the main package. Whenever possible, I recommend doing both the schema and data deploy with one method. If you're going to use SqlPackage to deploy the schema, it's not that much harder to have it deploy the default data too. In fact, the schema code runs for us only if: 1) the database doesn't exist; or 2) the schema has changed and can be safely updated. The default data runs only if the data is missing or the scripts decide it is corrupt. We also hae a bunch of scripts run during the package deploy to set roles, logins, and grant permissions. In fact, a lot of these scripts are common to are databases and are shared among. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Friday, January 24, 2014 8:40 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions / SQL Thanks! I was planning on only using it to do my initial schema setup, and have SqlScript do everything else. My current RedGate schema export is 144k and it takes 6 minutes for the C++ CA to parse it :( Just trying to figure out my options. On Fri, Jan 24, 2014 at 9:33 AM, John Cooper jocoo...@jackhenry.com wrote: Well, I'll see if I can throw something together. I can't expose the code, but I can describe the component custom actions and the table in enough detail to make it easy enough to re-implement. The one big gotcha is early releases of the SSDT had versions of SqlPackage.exe that lacked a provision to extend the timeout. This doesn't matter much on a remote deploy if you're only deploying one database, but if you're deploying several, you'll need to extend the timeout by setting a registry entry. We generally set it a 5 minutes (300 seconds) which may be overkill, but works for us. I recommend only use the October 2013 (or later) SSDT package. My technique deploys up to seven databases in this manner. I'm using it in production on eight products currently (and converting an additional product over to it that currently uses SqlScript/SqlString). I'll try to have something up on my blog by Monday. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Friday, January 24, 2014 8:21 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions / SQL Thanks for the responses guys, that helps a lot. John: do you have any blog posts or anything that speaks to how you're deploying databases and such with WiX with SqlPackage.exe? My other post talks about some of the pain I'm having with a very large SQL script (144k lines) and wondering if SqlPackage.exe would alleviate some of that. Thanks, Levi On Fri, Jan 24, 2014 at 12:53 AM, Blair Murri os...@live.com wrote: If they are not in DTF then the WiX toolset doesn't provide them. It's assumed that most of what drove you to managed code would already be in the Framework so there isn't the same level of need to invent the wheel. Having said that, I like John's reply. Cool system. I'll have to remember that next time I'm faced with installers populating databases. Blair From: Levi Wilson Sent: Thursday, January 23, 2014 6:37 AM To: General discussion for Windows Installer XML toolset. Being out of the WiX installer world for a handful of years, I was used to writing all of my custom actions in C++. Getting back into this I noticed that it is now acceptable to write them in C# and the DTF. That being said, I have a custom action that is currently written in C
Re: [WiX-users] C# Custom Actions / SQL
Sorry, one caveat to that post is that we will NOT be creating the actual database. It will be empty, and the client sets up the permissions beforehand. On Fri, Jan 24, 2014 at 10:42 AM, Levi Wilson l...@leviwilson.com wrote: I'm fine with using that to do both the schema and initial data deploy with the one method. What I'm unclear/fuzzy are the incremental changes/migrations that we do from release to release. Originally, this was my plan: http://nicholas.piasecki.name/blog/2009/09/running-update-sql-scripts-during-minor-upgrades-with-wix/ I still like the idea of that as it seems easier for me to grok. Thank you so much for your thoughts; you clearly have done this before ;-) On Fri, Jan 24, 2014 at 9:57 AM, John Cooper jocoo...@jackhenry.comwrote: There are disadvantages to using this mixed approach. Chief among them is that you inherit SqlScript/SqlString's limitations on default instances if SQL browsing is disabled. I've tested and SqlPackage does not have this limitation. That being said, we do have a mix (particularly to implement ALTER RECOVERY SIMPLE), but we're always moving to merge them back into the main package. Whenever possible, I recommend doing both the schema and data deploy with one method. If you're going to use SqlPackage to deploy the schema, it's not that much harder to have it deploy the default data too. In fact, the schema code runs for us only if: 1) the database doesn't exist; or 2) the schema has changed and can be safely updated. The default data runs only if the data is missing or the scripts decide it is corrupt. We also hae a bunch of scripts run during the package deploy to set roles, logins, and grant permissions. In fact, a lot of these scripts are common to are databases and are shared among. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Friday, January 24, 2014 8:40 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions / SQL Thanks! I was planning on only using it to do my initial schema setup, and have SqlScript do everything else. My current RedGate schema export is 144k and it takes 6 minutes for the C++ CA to parse it :( Just trying to figure out my options. On Fri, Jan 24, 2014 at 9:33 AM, John Cooper jocoo...@jackhenry.com wrote: Well, I'll see if I can throw something together. I can't expose the code, but I can describe the component custom actions and the table in enough detail to make it easy enough to re-implement. The one big gotcha is early releases of the SSDT had versions of SqlPackage.exe that lacked a provision to extend the timeout. This doesn't matter much on a remote deploy if you're only deploying one database, but if you're deploying several, you'll need to extend the timeout by setting a registry entry. We generally set it a 5 minutes (300 seconds) which may be overkill, but works for us. I recommend only use the October 2013 (or later) SSDT package. My technique deploys up to seven databases in this manner. I'm using it in production on eight products currently (and converting an additional product over to it that currently uses SqlScript/SqlString). I'll try to have something up on my blog by Monday. -- 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: Levi Wilson [mailto:l...@leviwilson.com] Sent: Friday, January 24, 2014 8:21 AM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] C# Custom Actions / SQL Thanks for the responses guys, that helps a lot. John: do you have any blog posts or anything that speaks to how you're deploying databases and such with WiX with SqlPackage.exe? My other post talks about some of the pain I'm having with a very large SQL script (144k lines) and wondering if SqlPackage.exe would alleviate some of that. Thanks, Levi On Fri, Jan 24, 2014 at 12:53 AM, Blair Murri os...@live.com wrote: If they are not in DTF then the WiX toolset doesn't provide them. It's assumed that most of what drove you to managed code would already be in the Framework so there isn't the same level of need to invent the wheel. Having said that, I like John's reply. Cool system. I'll have to remember that next time I'm faced with installers populating databases. Blair From: Levi Wilson Sent: Thursday, January 23, 2014 6:37 AM To: General discussion for Windows Installer XML toolset. Being out of the WiX installer world for a handful of years
[WiX-users] C# Custom Actions / SQL
Being out of the WiX installer world for a handful of years, I was used to writing all of my custom actions in C++. Getting back into this I noticed that it is now acceptable to write them in C# and the DTF. That being said, I have a custom action that is currently written in C++ that checks for the existence of a database as well as to verify if a particular table exists. For that, I am using the sqlutil.lib to make that easier. In C# custom actions, is there an equivalent or do most people just use SqlConnection / SqlCommand out of the .NET framework? Apologies if this is an obvious question, I just didn't want to re-invent the wheel if WiX had a helper library to assist with this. I didn't see any SQL related classes in DTF. Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] SqlScript with large schema setup
I am using a SqlScript / to create our database schema. I exported the schema using RedGate. The file is 10MB (I know, I know...). Everything works as expected, but during the installation the Configuring SQL Server takes forever. I know, 10MB file with 144k lines of SQL to parse is a lot...is there a better alternative to getting this initial script created? Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SqlScript with large schema setup
I am using a SqlScript / to create our database schema. I exported the schema using RedGate. The file is 10MB (I know, I know...). Everything works as expected, but during the installation the Configuring SQL Server takes forever. I know, 10MB file with 144k lines of SQL to parse is a lot...is there a better alternative to getting this initial script created? Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SqlScript with large schema setup
Sorry I didn't mention this before, but the database is already going to exist. Our customers create this beforehand. The installer will just be running the SQL script for the initial schema to create all of our tables, triggers, sprocs, etc. When looking at the installer log, I see two lines that jump out at me: MSI (s) (C4!BC) [11:44:00:998]: Closing MSIHANDLE (45) of type 790540 for thread 12732 MSI (s) (C4!BC) [11:50:33:616]: PROPERTY CHANGE: Adding ExecuteSqlStrings property. Its value is '**'. So it looks like it takes 6 minutes to take the 144k lines of my SQL script that is stored in a binary / to create the ExecuteSqlStrings property. Seems like I'm holding it wrong :-) Would a better option be to create a CA that reads the SQL out of a binary record and execute it myself? Rather than having the intermediate step of creating an MSI property? Levi Why not right click on the DB, tasks and generate in MS? What version of SQL? On Thu, Jan 23, 2014 at 10:52 AM, Levi Wilson levi@... wrote: I am using a SqlScript / to create our database schema. I exported the schema using RedGate. The file is 10MB (I know, I know...). Everything works as expected, but during the installation the Configuring SQL Server takes forever. I know, 10MB file with 144k lines of SQL to parse is a lot...is there a better alternative to getting this initial script created? Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@... https://lists.sourceforge.net/lists/listinfo/wix-users -- They may forget what you said but they will never forget how you made them feel. -- Anonymous -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SqlScript with large schema setup
What are other ways that people have gotten around it? It doesn't seem desirable to execute `sqlcmd` from a CA. On Thu, Jan 23, 2014 at 2:26 PM, Rob Mensching r...@robmensching.com wrote: You'll want to think about security with that second option. I don't think the MSI property is the issue. I think it's the SQLCA code itself that is slow parsing. IIRC, there is a (very old) bug about the perf problem. Maybe you'd like to tackle it? -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, January 23, 2014 10:41 AM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] SqlScript with large schema setup Sorry I didn't mention this before, but the database is already going to exist. Our customers create this beforehand. The installer will just be running the SQL script for the initial schema to create all of our tables, triggers, sprocs, etc. When looking at the installer log, I see two lines that jump out at me: MSI (s) (C4!BC) [11:44:00:998]: Closing MSIHANDLE (45) of type 790540 for thread 12732 MSI (s) (C4!BC) [11:50:33:616]: PROPERTY CHANGE: Adding ExecuteSqlStrings property. Its value is '**'. So it looks like it takes 6 minutes to take the 144k lines of my SQL script that is stored in a binary / to create the ExecuteSqlStrings property. Seems like I'm holding it wrong :-) Would a better option be to create a CA that reads the SQL out of a binary record and execute it myself? Rather than having the intermediate step of creating an MSI property? Levi Why not right click on the DB, tasks and generate in MS? What version of SQL? On Thu, Jan 23, 2014 at 10:52 AM, Levi Wilson levi@... wrote: I am using a SqlScript / to create our database schema. I exported the schema using RedGate. The file is 10MB (I know, I know...). Everything works as expected, but during the installation the Configuring SQL Server takes forever. I know, 10MB file with 144k lines of SQL to parse is a lot...is there a better alternative to getting this initial script created? Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@... https://lists.sourceforge.net/lists/listinfo/wix-users -- They may forget what you said but they will never forget how you made them feel. -- Anonymous -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SqlScript with large schema setup
I'm actually looking at it now :-) I can live with the initial, since that's only going to happen the first time you run our installer and our schema is not there. On an update (doing major upgrades) we are going to have migration scripts run. Those should not be near what this initial one is. Looking at the code (I just have 3.7, but it doesn't sounds like it's changed in awhile) I'm not seeing any tests for any of the parsing in scasqlstr.cpp, which intimidates me :-) It's doing a LOT, but mostly looks like it is just eating comments and removing GO statements to execute each command individually. I may fall into the group of living with it ;-) On Thu, Jan 23, 2014 at 4:47 PM, Rob Mensching r...@robmensching.com wrote: I assume most people live with the perf since no one has ever bothered to fix the bug. -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, January 23, 2014 12:30 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] SqlScript with large schema setup What are other ways that people have gotten around it? It doesn't seem desirable to execute `sqlcmd` from a CA. On Thu, Jan 23, 2014 at 2:26 PM, Rob Mensching r...@robmensching.com wrote: You'll want to think about security with that second option. I don't think the MSI property is the issue. I think it's the SQLCA code itself that is slow parsing. IIRC, there is a (very old) bug about the perf problem. Maybe you'd like to tackle it? -Original Message- From: Levi Wilson [mailto:l...@leviwilson.com] Sent: Thursday, January 23, 2014 10:41 AM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] SqlScript with large schema setup Sorry I didn't mention this before, but the database is already going to exist. Our customers create this beforehand. The installer will just be running the SQL script for the initial schema to create all of our tables, triggers, sprocs, etc. When looking at the installer log, I see two lines that jump out at me: MSI (s) (C4!BC) [11:44:00:998]: Closing MSIHANDLE (45) of type 790540 for thread 12732 MSI (s) (C4!BC) [11:50:33:616]: PROPERTY CHANGE: Adding ExecuteSqlStrings property. Its value is '**'. So it looks like it takes 6 minutes to take the 144k lines of my SQL script that is stored in a binary / to create the ExecuteSqlStrings property. Seems like I'm holding it wrong :-) Would a better option be to create a CA that reads the SQL out of a binary record and execute it myself? Rather than having the intermediate step of creating an MSI property? Levi Why not right click on the DB, tasks and generate in MS? What version of SQL? On Thu, Jan 23, 2014 at 10:52 AM, Levi Wilson levi@... wrote: I am using a SqlScript / to create our database schema. I exported the schema using RedGate. The file is 10MB (I know, I know...). Everything works as expected, but during the installation the Configuring SQL Server takes forever. I know, 10MB file with 144k lines of SQL to parse is a lot...is there a better alternative to getting this initial script created? Thanks in advance, Levi -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@... https://lists.sourceforge.net/lists/listinfo/wix-users -- They may forget what you said but they will never forget how you made them feel. -- Anonymous -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing
Re: [WiX-users] Just a question out of frustration
Can you post your codE? On 3/21/07, Friedrich Dominicus [EMAIL PROTECTED] wrote: No as you can see Microsoft.VC80.CRT,processorArchitectu there is not hint to MFC so it's just the normal, c runtime libraries. And well as written I've added them via inclucion of the suitable *.msn file. The paradox thing it that I do not use anything from the standard library just windows related APIs Regards Friedrich -- Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] COM Registration
Are you changing your interfaces to your COM objects that often that this will be a pain to do? On 3/21/07, Jacquet Fabian [EMAIL PROTECTED] wrote: Hi, Is there a way to register self-register com dll (made with VB6) without use registry keys? My problem is: if I modify my com dll I must generate registry keys again... I would like to copy dll and compile my wix files without change anything else. Is it possible? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing locally hosted files
You could do a file or a directory search at the beginning where the result of the search will be saved in a Property /, and I believe that you can then set your launch condition based upon that property. Also, if everything checks out with the directory or file search, then you could set your installation directory to the result of that? Is that what you're looking for? Check out the FileSearch / and DirectorySearch / elements out if so. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For a particular installation, the user has some of the files required for installation already on their system prior to running the installer. I want to copy these files into the installation directory. Is there a preferred method for doing this? Would I need a Custom Action, can I manually insert these locally hosted files into the database tables at install time, or is there another method? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing locally hosted files
Well, you could probably still use that search to verify that the files DO exist and base your launch conditions off of that. Then you could use the FileCopy / to move the files. I think, however, that with this they will not be removed upon uninstall. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I don't want to set my directory to the current location of the files on their machine, rather I want to copy those files to the location they choose to install the software. So say the required files were in c:\myfiles\ and they chose to install to c:\program files\installdir\ then I want to basically have the effect of copy c:\myfiles\filex.txt c:\program files\installdir\filex.txt -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 21, 2007 10:48 AM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Installing locally hosted files You could do a file or a directory search at the beginning where the result of the search will be saved in a Property /, and I believe that you can then set your launch condition based upon that property. Also, if everything checks out with the directory or file search, then you could set your installation directory to the result of that? Is that what you're looking for? Check out the FileSearch / and DirectorySearch / elements out if so. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For a particular installation, the user has some of the files required for installation already on their system prior to running the installer. I want to copy these files into the installation directory. Is there a preferred method for doing this? Would I need a Custom Action, can I manually insert these locally hosted files into the database tables at install time, or is there another method? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing locally hosted files
Yes, I'm dyslexic :-D On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Ah, yes I see CopyFile now (I assume that's what you're referring to.) I think that should work, I'll give it a shot. Thanks again. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 21, 2007 10:59 AM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Installing locally hosted files Well, you could probably still use that search to verify that the files DO exist and base your launch conditions off of that. Then you could use the FileCopy / to move the files. I think, however, that with this they will not be removed upon uninstall. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I don't want to set my directory to the current location of the files on their machine, rather I want to copy those files to the location they choose to install the software. So say the required files were in c:\myfiles\ and they chose to install to c:\program files\installdir\ then I want to basically have the effect of copy c:\myfiles\filex.txt c:\program files\installdir\filex.txt -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 21, 2007 10:48 AM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Installing locally hosted files You could do a file or a directory search at the beginning where the result of the search will be saved in a Property /, and I believe that you can then set your launch condition based upon that property. Also, if everything checks out with the directory or file search, then you could set your installation directory to the result of that? Is that what you're looking for? Check out the FileSearch / and DirectorySearch / elements out if so. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For a particular installation, the user has some of the files required for installation already on their system prior to running the installer. I want to copy these files into the installation directory. Is there a preferred method for doing this? Would I need a Custom Action, can I manually insert these locally hosted files into the database tables at install time, or is there another method? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Installing locally hosted files
I'm sure you could...I just assumed that the files would remain intact since they were there before the installation started. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Could you not use RemoveFile if the files in question should be removed on uninstall? Regards, Richard -- *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Wednesday, March 21, 2007 10:59 AM *To:* [EMAIL PROTECTED] *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Installing locally hosted files Well, you could probably still use that search to verify that the files DO exist and base your launch conditions off of that. Then you could use the FileCopy / to move the files. I think, however, that with this they will not be removed upon uninstall. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I don't want to set my directory to the current location of the files on their machine, rather I want to copy those files to the location they choose to install the software. So say the required files were in c:\myfiles\ and they chose to install to c:\program files\installdir\ then I want to basically have the effect of copy c:\myfiles\filex.txt c:\program files\installdir\filex.txt -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 21, 2007 10:48 AM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Installing locally hosted files You could do a file or a directory search at the beginning where the result of the search will be saved in a Property /, and I believe that you can then set your launch condition based upon that property. Also, if everything checks out with the directory or file search, then you could set your installation directory to the result of that? Is that what you're looking for? Check out the FileSearch / and DirectorySearch / elements out if so. On 3/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For a particular installation, the user has some of the files required for installation already on their system prior to running the installer. I want to copy these files into the installation directory. Is there a preferred method for doing this? Would I need a Custom Action, can I manually insert these locally hosted files into the database tables at install time, or is there another method? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- * C O N F I D E N T I A L I T Y N O T I C E * --- The content of this e-mail is intended solely for the use of the individual or entity to whom it is addressed. If you have received this communication in error, be aware that forwarding it, copying it, or in any way disclosing its content to any other person, is strictly prohibited. Peek Traffic Corporation is neither liable for the contents, nor for the proper, complete and timely transmission of (the information contained in) this communication. If you have received this communication in error, please notify the author by replying to this e-mail immediately and delete the material from any computer. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] BrowseDlg error
This is just a guess, but in your PathEdit control, you have Indirect set to Yes. What is your INSTALLDIR property set to before you call the dialog? Since it says that it is Indirect, it will try to store (and load) the value to whatever is IN INSTALLDIR before the dialog is created. For instance, if INSTALLDIR is set to WIXUI_INSTALLDIR or something, then the PathEdit control will load/save it's value in WIXUI_INSTALLDIR instead of INSTALLDIR. On 3/20/07, Jacquet Fabian [EMAIL PROTECTED] wrote: Hi, I'm using a dialog to change install directory. But during installation, when it try to show the dialog, it crash with this log error: DEBUG: Error 2343: Specified path is empty. Here is the dialg source: Dialog Id=BrowseDlg Width=370 Height=270 Title=[ProductName] [Setup] NoMinimize=yes Control Id=PathEdit Type=PathEdit X=84 Y=202 Width=261 Height=18 Property=INSTALLDIR Indirect=yes / Control Id=OK Type=PushButton X=304 Y=243 Width=56 Height=17 Default=yes Text=[ButtonText_OK] Publish Event=SetTargetPath Value=[INSTALLDIR]![CDATA[1]]/Publish Publish Event=EndDialog Value=Return![CDATA[1]]/Publish /Control Control Id=Cancel Type=PushButton X=240 Y=243 Width=56 Height=17 Cancel=yes Text=[ButtonText_Cancel] Publish Event=Reset Value=0![CDATA[1]]/Publish Publish Event=EndDialog Value=Return![CDATA[1]]/Publish /Control Control Id=ComboLabel Type=Text X=25 Y=58 Width=44 Height=10 TabSkip=no Text=amp;Look in: / Control Id=DirectoryCombo Type=DirectoryCombo X=70 Y=55 Width=220 Height=80 Property=INSTALLDIR Indirect=yes Fixed=yes Remote=yes Subscribe Event=IgnoreChange Attribute=IgnoreChange / /Control Control Id=Up Type=PushButton X=298 Y=55 Width=19 Height=19 ToolTip=Up One Level Icon=yes FixedSize=yes IconSize=16 Text=Up Publish Event=DirectoryListUp Value=0![CDATA[1]]/Publish /Control Control Id=NewFolder Type=PushButton X=325 Y=55 Width=19 Height=19 ToolTip=Create A New Folder Icon=yes FixedSize=yes IconSize=16 Text=New Publish Event=DirectoryListNew Value=0![CDATA[1]]/Publish /Control Control Id=DirectoryList Type=DirectoryList X=25 Y=83 Width=320 Height=110 Property=INSTALLDIR Sunken=yes Indirect=yes TabSkip=no / Control Id=PathLabel Type=Text X=25 Y=205 Width=59 Height=10 TabSkip=no Text=amp;Folder name: / Control Id=BannerBitmap Type=Bitmap X=0 Y=0 Width=374 Height=44 TabSkip=no Text=[BannerBitmap] / Control Id=BannerLine Type=Line X=0 Y=44 Width=374 Height=0 / Control Id=BottomLine Type=Line X=0 Y=234 Width=374 Height=0 / Control Id=Description Type=Text X=25 Y=23 Width=280 Height=15 Transparent=yes NoPrefix=yes TextSélectionnez le répertoir de destination/Text /Control Control Id=Title Type=Text X=15 Y=6 Width=200 Height=15 Transparent=yes NoPrefix=yes Text[DlgTitleFont]Destination/Text /Control /Dialog - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Convert .reg file to .wxs?
I'm not sure about converting .reg to .wxs, but couldn't you just use heat to harvest your COM exe server? On 3/20/07, Chris Bardon [EMAIL PROTECTED] wrote: Quick question-is there a way to convert a .reg file to wxs format? I was able to get a COM exe server's registry changes using a registry diff tool that generated a .reg file, which I proceeded to convert by hand to wix markup. Just wondering if there's an easier way to do the conversion that I don't know about, possibly with heat. Thanks, Chris - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Convert .reg file to .wxs?[Scanned]
Have you tried it to see though? On 3/20/07, Thomas Leigh [EMAIL PROTECTED] wrote: I don't believe heat works with COM exes… *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* 20 March 2007 12:40 *To:* Chris Bardon *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Convert .reg file to .wxs?[Scanned] I'm not sure about converting .reg to .wxs, but couldn't you just use heat to harvest your COM exe server? On 3/20/07, *Chris Bardon* [EMAIL PROTECTED] wrote: Quick question-is there a way to convert a .reg file to wxs format? I was able to get a COM exe server's registry changes using a registry diff tool that generated a .reg file, which I proceeded to convert by hand to wix markup. Just wondering if there's an easier way to do the conversion that I don't know about, possibly with heat. Thanks, Chris - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- This message has been scanned for viruses by Sophos PureMessage. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] verify file existance custom action
No, you'll need to link in with the msi.lib. At the beginning of your cpp file, add the following: #pragma comment(lib,msi.lib) #pragma comment(lib,shlwapi.lib) That should work. Those functions that it is trying to call need to be linked in from the libraries that house them. On 3/20/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Ok, I finally have access to the machine I need and I'm trying this out. I tried to build in Visual Studio 03 as a C++ project, and right off the bat I got some build errors that I don't understand. I'm sure they're pretty typical, I'm just unfamiliar with VC++. error LNK2001: unresolved external symbol unsigned int __stdcall MsiSetPropertyA(unsigned long,char const *,char const *) (?MsiSetPropertyA@@[EMAIL PROTECTED]) error LNK2001: unresolved external symbol int __stdcall PathFileExistsA(char const *) (?PathFileExistsA@@[EMAIL PROTECTED]) error LNK2001: unresolved external symbol unsigned int __stdcall MsiGetPropertyA(unsigned long,char const *,char *,unsigned long *) (?MsiGetPropertyA@@[EMAIL PROTECTED]) I'd guess it must be something with my setup, because I get the same errors about the Set and Get methods when I use the tiny CheckPID example from http://www.tramontana.co.hu/wix/lesson3.php#3.3 I know not really a WiX issue, but I'd appreciate any advise you had. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Friday, March 16, 2007 8:56 AM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Sorry, prematurely sent it. Here is what I was getting at: extern C UINT __stdcall LocateFile(MSIHANDLE hInstall) { char* pDirPath = NULL; DWORD dw = 0; if( ERROR_MORE_DATA!=MsiGetProperty(hInstall,MYFOLDER,NULL,dw) ) return ERROR_INSTALL_FAILURE; dw += strlen(requiredfile.txt) + 1 /* term. NULL */; pDirPath = new char[dw]; pDirPath[0] = '\0'; if( ERROR_SUCCESS!=MsiGetProperty(hInstall,MYFOLDER,pDirPath,dw) ) { delete[] pDirPath; return ERROR_INSTALL_FAILURE; } _ASSERTE( 0!=strlen(pDirPath) ); if( PathFileExists(pDirPath) ) { MsiSetProperty(hInstall,MYFILEEXISTS,pDirPath); // Dr. Evil assumption } delete[] pDirPath; return ERROR_SUCCESS; } I believe that something like this would work. On 3/16/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: If I look at the log after a completed installation, I can see the following property values. Property(S): MYFOLDER = C:\FTP\#This is the folder I selected in the dialog … Property(S): MYFILEEXISTS = C:\requiredfile.txt #this is where the file was found (MYFOLDER was initialized to 'c:\') So MYFOLDER did get set, but it seems to happen after the directory search took place. Would it be possible to have AppSearch happen sometime in the UI sequence, or would that break something else? It looks like by default It happens very early on. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 4:36 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Hmmm, I've never used a directory search like that. So you're saying that your MYFOLDER property isn't getting set when the directory search is performed? I think you probably *will* need to maybe use a custom action then since I don't think you can dynamically manipulate a directory search, or tell it when to perform it as I think file searches get executed during the AppSearch sequence? I could be wrong, but I don't think you can use the FileSearch like this. On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: That actually looks like exactly what I want… much cleaner than my C++ hackjob. That gives me a followup question, however. I plugged your suggestion (with Depth=0) into my dialog I use to browse to the directory that contains the file. It appears that the property I'm trying to set to the browsed-to directory doesn't contain the browsed-to directory when the DirectorySearch is performed. Dialog Id=GetExistingFilesDlg Width=370 Height=270 Title=[ProductName] [Setup] NoMinimize=yes Control Id=PathEdit Type=PathEdit X=84 Y=202 Width=261 Height=18 Property=MYFOLDER/ Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Property Id=MYFILEEXISTS DirectorySearch Id=MyDirSearch Path=[MYFOLDER] Depth=0 FileSearch Id=MyFileSearch Name= requiredfile.txt / /DirectorySearch /Property Publish Event=SpawnDialog Value=InvalidDirDlgNOT MYFILEEXISTS/Publish Publish Event=NewDialog Value=SetupTypeDlgMYFILEEXISTS/Publish /Control I initialized MYFOLDER with Property Id='MYFOLDER' Value='c:\' / This works if requiredfile.txt is in c
Re: [WiX-users] C# .dll
And C++ will NEVER die. On 3/19/07, Danish Waheed [EMAIL PROTECTED] wrote: I think one of the reasons why Windows Installer does not have lots of fancy actions is because they are not generally related to installation and hence the support for Custom Actions. You cannot include all the possible actions as there are so many types of software and so many configuration/changes required, that it is better to leave them to the developer to write custom actions for their needs. Now for .NET Custom Actions, I think it will be cool to have support for that, but at the same time, I think vbScript and Jscript are very easy to use and learn compared to C++, in case someone does not want to spend time on C++. Besides, if you know Object Oriented Programming, like C#, learning C++ is not that difficult especially if it is just for Custom Actions. It may take a bit extra time for you to write a DLL in the beginning, but once it is done, adding more functions to it is very easy. There are so many tutorials out there that you can learn from. I am not a C++ programmer by any means and most of my coding has been in C# and Java so I understand where Dhaval is coming from. But I had to write custom actions in C++ as it was not an option at several places I worked at. So if you like being a setup developer for Windows, learning C++ will definitely help you in the longer run. Now one must avoid using Custom Actions unless it is really required and is something that Windows Installer cannot do. But can you avoid it or not depends on the software you are writing setup for, I have seen a lot of products with more than 50 Custom Actions and all of them doing something that Windows Installer cannot do. Once you start working on complex software setup, things get messy very easily and the best way to handle those Custom Actions is to write Custom Action dll in C++. Just my two cents. Thanks Danish Waheed -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Monday, March 19, 2007 11:44 AM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] C# .dll One other concern in making custom actions in C# (or anything else) is that as Rob regularly observes, custom actions are very difficult to get right - especially when considering installation failure (rollback) and appropriate uninstall operation. Speaking for myself, I try to avoid them whenever possible. In fact I think the only custom actions I currently have in any of the installations I have generated relate to the verification at installation time of a customer entered license key. Many people seem to look at custom actions as a way to do things that aren't supported by Microsoft Installer itself. While true, it is also often true that there is a reason why Microsoft Installer doesn't currently contain built-in support for that specific action. Regards, Richard --- Original message follows --- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dhaval Patel Sent: Monday, March 19, 2007 10:45 AM To: Rob Mensching Cc: Joe Kaplan; wix-users@lists.sourceforge.net Subject: Re: [WiX-users] C# .dll Folks like me, meaning people who have minuscule experience programming in VBScript or C++. I pretty much started learning to program in C# back in 2002, graduated last year, and am currently working as a C#/ASP.NET developer. Of course I could embark on a journey to learn C++, but I think the rest of the world is moving to .NET, especially with the advent of C# 3.0 (LINQ), CLR 3.5, etc. I rather spend time on exploring new features of C# 3.0 and CLR 3.5. I am still a WIX newbie by any means - I hope I didn't offend you by saying 'people like me' :) In essence what I was trying to say is that folks who excel in C# will be able to exploit WIX's features to a greater extent. Plus I think if this happens, many developers will start adopting WIX right away. I still have a few colleagues who don't want to use just because they can't pass values read from a WIX User dialog to a C# .dll. One (hypothetical) example most people would put this functionality to use is writing their own custom SQL connection strings using the SqlConnectionStringBuilder. --- Remainder of message history trimmed --- * C O N F I D E N T I A L I T Y N O T I C E * --- The content of this e-mail is intended solely for the use of the individual or entity to whom it is addressed. If you have received this communication in error, be aware that forwarding it, copying it, or in any way disclosing its content to any other person, is strictly prohibited. Peek Traffic Corporation is neither liable for the contents, nor for the proper, complete and timely transmission of (the information contained in) this communication. If you have received this communication in error, please notify the author by replying to this e-mail immediately and delete the material from any
Re: [WiX-users] How to create folders and shortcuts in the Start Menu? (Wix 3.0)
I've only been working with WiX for a little over a month, so I'll _try_ to answer your questions to the best of my knowledge: On 3/15/07, DE [EMAIL PROTECTED] wrote: I'd just like to ask some questions relating to this area, because I cannot find much meaningful documentation about it. All we want to do is create shortcuts to some of the files we are installaing. We are using the latest Votive. Assume we are happy to install to all users. 1) What exactly does it mean to advertise a short cut? I believe that you can have advertised, and non-advertised shortcuts. What this means I think is that you can potentially have a component that gets added, but isn't necessarily installed but can be when someone clicks on the shortcut. This happens I believe in certain office installations where when you click on the shortcut you get that Windows Installer message box indicating that it is installing something. I'm not 100% clear on when to use or not use advertised shortcuts, but I typically have just been setting Advertised=yes. 2) Using advertised shortcuts and the RemoveFolder tip you made earlier, we have managed to create a shortcut that is visible within a sub directory of Start Menu. But it doesn't actually link correctly; on inspection the target name is set to the name of the product. Why is this? I think that I'd have to look at your wxs source for this shortcut to see if something doesn't look correct. If you want another example, you can look in the WiX v3 src folder to see how the WiX install is setup using WiX. I believe it's in src\Setup. 3) Should I set ALLUSERS = 1 as well? How does it manifest? Would it effect the previous point? From what I cans see, the ICE errors are not fixed by ALLUSERS=1. I pretty much have always been setting ALLUSERS = 1. From what I've read in this newsgroup, it seems that it's pretty difficult to maintain a true per-user installation, so I've opted for simplicity :-) Adding this property was just a guess, but you still may need to use the RemoveFolder / element to rid yourself of them. 4) Are icons required to get the Start menu shortcut working correctly? No. 5) Does there exist a working example in Wix 3.0? Should we perhaps not be using Wix 3.0? AFAIK, WiX 3.0 is a perfectly viable solution for MOST situations. There has been the occasional bug that has passed through the message board here that just simply haven't been ported from v2 to v3 yet, but for most situations v3.0 is perfectly fine. I've been using it for all of my installations and haven't ran into any issues. There have been other postings within the last month that discuss this very issue if you'd like to check them out. Levi Wilson wrote: Someone correct me if I'm wrong, but I think that if you want the shortcut installed for All Users, you need to define this property: Property Id=ALLUSERS Value=1 / If you don't, inside that Component / you can have this: RemoveFolder Id=MyRemFolder Directory=ProgramMenuFolder1 On=uninstall / On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Yes, the installation runs fine but doesn't create the folders in the Start Menu at all. I manage now to change the source to the following: File Id=ReleaseNotes Name=Dot Net SDK Release Notes.doc Source=$(var.TrunkComponentRelease)\Dot Net SDK Release Notes.doc Shortcut Id=NewShortcut3 Directory=ProgramMenuFolder1 LongName=NewShortcut3 Name=NewShort Advertise=yes Show=normal/ !--Shortcut Id=adguide Directory=DashMenuDir Name=AdGuide LongName=Agilent Business Dashboard Admin Guide WorkingDirectory=manuals Advertise=yes /-- /File Directory Id=ProgramMenuFolder Name=PMFolder Directory Id=ProgramMenuFolder1 Name=MyProduct / /Directory but I received the following error: Error 17 ICE64: The directory ProgramMenuFolder1 is in the user profile but is not listed in the RemoveFile table. D:\BlackDeath\SuperSolution\WixDotNetSDK\WixDotNetSDKRelease.wxs 240 1 WixDotNetSDKRelease Thanks, Erich. Levi Wilson wrote: What didn't work? Can you post your WiX fragment for us to look at? Only the portion of the wxs file that has the shortcut that you're trying to create. Did the installation go through, but your start menu folder not get created? What happened? On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi Levi, I tried the example you included, but it didn't work in Wix 3.0. Could you provide me a whole example please? Thanks, Erich. Levi Wilson wrote: There's this section: *Component* Id='Manual' Guid='YOURGUID-574D-4A9A-A266-5B5EC2C022A4' *File* Id='Manual' Name='Manual.pdf' DiskId='1' Source='Manual.pdf ' *Shortcut* Id=startmenuManual Directory=ProgramMenuDir Name=Manual LongName
Re: [WiX-users] verify file existance custom action
Yeah, that's what I was trying to say. I believe this happens in the AppSearch sequence. You probably will need to use a CA for this to happen. I can try to help you with this as well, but it might look something like the following: extern C UINT __stdcall LocateFile(MSIHANDLE hInstall) { char* pDirPath = NULL; } On 3/16/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: If I look at the log after a completed installation, I can see the following property values. Property(S): MYFOLDER = C:\FTP\#This is the folder I selected in the dialog … Property(S): MYFILEEXISTS = C:\requiredfile.txt #this is where the file was found (MYFOLDER was initialized to 'c:\') So MYFOLDER did get set, but it seems to happen after the directory search took place. Would it be possible to have AppSearch happen sometime in the UI sequence, or would that break something else? It looks like by default It happens very early on. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 4:36 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Hmmm, I've never used a directory search like that. So you're saying that your MYFOLDER property isn't getting set when the directory search is performed? I think you probably *will* need to maybe use a custom action then since I don't think you can dynamically manipulate a directory search, or tell it when to perform it as I think file searches get executed during the AppSearch sequence? I could be wrong, but I don't think you can use the FileSearch like this. On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: That actually looks like exactly what I want… much cleaner than my C++ hackjob. That gives me a followup question, however. I plugged your suggestion (with Depth=0) into my dialog I use to browse to the directory that contains the file. It appears that the property I'm trying to set to the browsed-to directory doesn't contain the browsed-to directory when the DirectorySearch is performed. Dialog Id=GetExistingFilesDlg Width=370 Height=270 Title=[ProductName] [Setup] NoMinimize=yes Control Id=PathEdit Type=PathEdit X=84 Y=202 Width=261 Height=18 Property=MYFOLDER/ Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Property Id=MYFILEEXISTS DirectorySearch Id=MyDirSearch Path=[MYFOLDER] Depth=0 FileSearch Id=MyFileSearch Name= requiredfile.txt / /DirectorySearch /Property Publish Event=SpawnDialog Value=InvalidDirDlgNOT MYFILEEXISTS/Publish Publish Event=NewDialog Value=SetupTypeDlgMYFILEEXISTS/Publish /Control I initialized MYFOLDER with Property Id='MYFOLDER' Value='c:\' / This works if requiredfile.txt is in c:\ (I can see MYFILEEXISTS=c:\requiredfile.txt in the log) It doesn't work if I browse to the directory that contains the file (and of course I remove the file from c:\ ) Thanks for the help so far, this feels like a much better way than what I was previously attempting. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 3:50 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Can you post your CA C++ code? Also, you don't need to have a DLL custom action to check for the existence of a file. You can do something like this in your WiX source: Property Id=MyFileExists DirectorySearch Id=MyDirSearch Path=some path here Depth=1 FileSearch Id=MyFileSearch Name=myfile.extension / /DirectorySearch /Property If the file has been found, then the MyFileExists property will be set to the full path of your file. Is this what you're looking for? On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I read that managed code in a custom action is a no-no (please forgive me if I use the wrong terminology) so I am attempting to write my custom action without using managed code. Most examples I find seem to use it, however, so I'm doing the best I can. I wrote a simple VC++ app (.exe) that will determine if some files exist. I probably did it badly, but it worked in that context. I took the same code, and cut paste into a VC++ file I had setup to create my dll. The code was previously a working snippet that would simply set a msi property to true and return ERROR_SUCCESS. I am now trying to make it do something useful. After the cut paste I got some build errors and followed (somewhat) the steps listed here to resolve them. http://support.microsoft.com/?kbid=814472 The dll built successfully, but when I run the installer I get error 2896, Executing action [2] failed. That doesn't tell me too much. I stepped backwards until
Re: [WiX-users] verify file existance custom action
Sorry, prematurely sent it. Here is what I was getting at: extern C UINT __stdcall LocateFile(MSIHANDLE hInstall) { char* pDirPath = NULL; DWORD dw = 0; if( ERROR_MORE_DATA!=MsiGetProperty(hInstall,MYFOLDER,NULL,dw) ) return ERROR_INSTALL_FAILURE; dw += strlen(requiredfile.txt) + 1 /* term. NULL */; pDirPath = new char[dw]; pDirPath[0] = '\0'; if( ERROR_SUCCESS!=MsiGetProperty(hInstall,MYFOLDER,pDirPath,dw) ) { delete[] pDirPath; return ERROR_INSTALL_FAILURE; } _ASSERTE( 0!=strlen(pDirPath) ); if( PathFileExists(pDirPath) ) { MsiSetProperty(hInstall,MYFILEEXISTS,pDirPath); // Dr. Evil assumption } delete[] pDirPath; return ERROR_SUCCESS; } I believe that something like this would work. On 3/16/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: If I look at the log after a completed installation, I can see the following property values. Property(S): MYFOLDER = C:\FTP\#This is the folder I selected in the dialog … Property(S): MYFILEEXISTS = C:\requiredfile.txt #this is where the file was found (MYFOLDER was initialized to 'c:\') So MYFOLDER did get set, but it seems to happen after the directory search took place. Would it be possible to have AppSearch happen sometime in the UI sequence, or would that break something else? It looks like by default It happens very early on. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 4:36 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Hmmm, I've never used a directory search like that. So you're saying that your MYFOLDER property isn't getting set when the directory search is performed? I think you probably *will* need to maybe use a custom action then since I don't think you can dynamically manipulate a directory search, or tell it when to perform it as I think file searches get executed during the AppSearch sequence? I could be wrong, but I don't think you can use the FileSearch like this. On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: That actually looks like exactly what I want… much cleaner than my C++ hackjob. That gives me a followup question, however. I plugged your suggestion (with Depth=0) into my dialog I use to browse to the directory that contains the file. It appears that the property I'm trying to set to the browsed-to directory doesn't contain the browsed-to directory when the DirectorySearch is performed. Dialog Id=GetExistingFilesDlg Width=370 Height=270 Title=[ProductName] [Setup] NoMinimize=yes Control Id=PathEdit Type=PathEdit X=84 Y=202 Width=261 Height=18 Property=MYFOLDER/ Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Property Id=MYFILEEXISTS DirectorySearch Id=MyDirSearch Path=[MYFOLDER] Depth=0 FileSearch Id=MyFileSearch Name= requiredfile.txt / /DirectorySearch /Property Publish Event=SpawnDialog Value=InvalidDirDlgNOT MYFILEEXISTS/Publish Publish Event=NewDialog Value=SetupTypeDlgMYFILEEXISTS/Publish /Control I initialized MYFOLDER with Property Id='MYFOLDER' Value='c:\' / This works if requiredfile.txt is in c:\ (I can see MYFILEEXISTS=c:\requiredfile.txt in the log) It doesn't work if I browse to the directory that contains the file (and of course I remove the file from c:\ ) Thanks for the help so far, this feels like a much better way than what I was previously attempting. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 3:50 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Can you post your CA C++ code? Also, you don't need to have a DLL custom action to check for the existence of a file. You can do something like this in your WiX source: Property Id=MyFileExists DirectorySearch Id=MyDirSearch Path=some path here Depth=1 FileSearch Id=MyFileSearch Name=myfile.extension / /DirectorySearch /Property If the file has been found, then the MyFileExists property will be set to the full path of your file. Is this what you're looking for? On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I read that managed code in a custom action is a no-no (please forgive me if I use the wrong terminology) so I am attempting to write my custom action without using managed code. Most examples I find seem to use it, however, so I'm doing the best I can. I wrote a simple VC++ app (.exe) that will determine if some files exist. I probably did it badly, but it worked in that context. I took the same code, and cut paste into a VC++ file I had setup to create my dll. The code was previously a working snippet that would simply set a msi
Re: [WiX-users] C# .dll
I don't know for certain, but my guess would be that there's no guarantee that the .NET Framework has been installed on the client. On 3/16/07, Dhaval Patel [EMAIL PROTECTED] wrote: Will WIX 3.0 be adding the capability to call C# .dll files? If not, WHY? :) - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Locate a required file during an install
Did you set up the proper [EMAIL PROTECTED] attribute for the entry point? On 3/15/07, Rob Hamflett [EMAIL PROTECTED] wrote: No, Win32 should be right. I can't really see what the problem would be with your installer. Just as a sanity check, you do have an entry for it in the Binary table, right? [EMAIL PROTECTED] wrote: Thanks for the advice Rob. I've got the directory browsing dialog in place, but I'm having issues getting my dll to work. When I hit the Next button in my dialog, I get an 'installer information' message window that says There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. My dll is mostly a duplicate of the sample custom action example in the tutorial (http://www.tramontana.co.hu/wix/lesson3.php ) #include stdafx.h #include windows.h #include msi.h #include msiquery.h #pragma comment(linker, /EXPORT:[EMAIL PROTECTED]) #pragma comment(lib, msi.lib) extern C UINT __stdcall CheckLicenseFiles (MSIHANDLE hInstall) { char Pid[MAX_PATH]; DWORD PidLen = MAX_PATH; MsiGetProperty (hInstall, MYFOLDER, Pid, PidLen); MsiSetProperty (hInstall, LicenseFilesFound, true); return ERROR_SUCCESS; } // CheckLicenseFiles I have a property MYFOLDER defined, as well as LicenseFilesFound Property Id='MYFOLDER' Value='c:\'/ Property Id=LicenseFilesFound Value='false' / Here's snippet from my dialog: Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Publish Event=DoAction Value=CheckForLicenseFiles1/Publish Publish Event=SpawnDialog Value=InvalidDirDlgLicenseFilesFound = false/Publish Publish Event=NewDialog Value=SetupTypeDlgLicenseFilesFound = true/Publish /Control I have noticed that in Visual Studio the source platform for the dll is Win32 as opposed to .NET. Could that be an issue? I'm entirely unexperienced with the .NET platform. Thanks again, Chris -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Rob Hamflett Sent: Tuesday, March 13, 2007 12:47 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Locate a required file during an install Here's a sample of what you're (hopefully) looking for. As I understand it, you want the user to browse to a directory where getyour existing files are, and then you want to verify them. The attached include files are put together from a couple of our products, and have had the usual secret stuff sanitised. So they might not work as-is, but will at least give you an idea of what you're looking for. In GetExistingFilesDlg the user is prompted for a path. This value will be stored in the property MYFOLDER. When they click next, this will call a custom action called checkFiles. This will have to be a DLL custom action which you need to write. It will need to get the MYFOLDER property, look for the files, and then write back a property called FILES_EXIST with yes if they exist, and something else if they don't. You need to set [EMAIL PROTECTED] to 'check' or 'ignore' because you need the action to finish before the installer continues. The other actions attached to the 'Next' button are based on the value of FILES_EXIST which you've just written. The installation will either continue, or the user will get a pop-up dialog. This is FilesAbsentDlg. The user is told the files are not there, and clicks OK to go back to GetExistingFilesDlg. The mailing list appears to be banning zip files, so I've renamed the extension to .piz Rob P.S. I've not attached the binary files for the background images. [EMAIL PROTECTED] wrote: I'm working on an installer that depends upon files that the user has received prior to performing the installation. Our current installer (not windows installer based) prompts the user to browse for the location of the files... I'm trying to replicate this, but I'm not exactly sure how to go about it. On one hand I think I might need a custom action, on the other hand, that functionality is already part of WiX (i.e. using ConfigurableDirectory in a Feature) I'm not sure if it's accessible in the context I'd like, a separate step in the install sequence. Can anyone offer a suggestion on the correct course of action? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDE V - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash
Re: [WiX-users] How to create folders and shortcuts in the Start Menu? (Wix 3.0)
You should check out the tutorial linked off of the wix.sourceforge.netpage. On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi guys, I couldn't find any working example of how to create a folder in the Start Menu and then include some shortcuts inside. It looks to be quite easy, but I couldn't find the way to do that. Does anybody have any good example? Thanks, Erich. -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9491889 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Locate a required file during an install
No, I think that your @DllEntry should be set to CheckLicenseFiles. On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I have the following elements defined. Do they look right? CustomAction Id=CheckForLicenseFiles BinaryKey=Bin_CheckForLicenseFiles DllEntry=Bin_CheckForLicenseFiles / And Binary Id=Bin_CheckForLicenseFiles SourceFile=LicenseFileCheck.dll / -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Rob Hamflett Sent: Thursday, March 15, 2007 10:02 AM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Locate a required file during an install No, Win32 should be right. I can't really see what the problem would be with your installer. Just as a sanity check, you do have an entry for it in the Binary table, right? [EMAIL PROTECTED] wrote: Thanks for the advice Rob. I've got the directory browsing dialog in place, but I'm having issues getting my dll to work. When I hit the Next button in my dialog, I get an 'installer information' message window that says There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. My dll is mostly a duplicate of the sample custom action example in the tutorial (http://www.tramontana.co.hu/wix/lesson3.php ) #include stdafx.h #include windows.h #include msi.h #include msiquery.h #pragma comment(linker, /EXPORT:[EMAIL PROTECTED]) #pragma comment(lib, msi.lib) extern C UINT __stdcall CheckLicenseFiles (MSIHANDLE hInstall) { char Pid[MAX_PATH]; DWORD PidLen = MAX_PATH; MsiGetProperty (hInstall, MYFOLDER, Pid, PidLen); MsiSetProperty (hInstall, LicenseFilesFound, true); return ERROR_SUCCESS; } // CheckLicenseFiles I have a property MYFOLDER defined, as well as LicenseFilesFound Property Id='MYFOLDER' Value='c:\'/ Property Id=LicenseFilesFound Value='false' / Here's snippet from my dialog: Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Publish Event=DoAction Value=CheckForLicenseFiles1/Publish Publish Event=SpawnDialog Value=InvalidDirDlgLicenseFilesFound = false/Publish Publish Event=NewDialog Value=SetupTypeDlgLicenseFilesFound = true/Publish /Control I have noticed that in Visual Studio the source platform for the dll is Win32 as opposed to .NET. Could that be an issue? I'm entirely unexperienced with the .NET platform. Thanks again, Chris -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Rob Hamflett Sent: Tuesday, March 13, 2007 12:47 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Locate a required file during an install Here's a sample of what you're (hopefully) looking for. As I understand it, you want the user to browse to a directory where getyour existing files are, and then you want to verify them. The attached include files are put together from a couple of our products, and have had the usual secret stuff sanitised. So they might not work as-is, but will at least give you an idea of what you're looking for. In GetExistingFilesDlg the user is prompted for a path. This value will be stored in the property MYFOLDER. When they click next, this will call a custom action called checkFiles. This will have to be a DLL custom action which you need to write. It will need to get the MYFOLDER property, look for the files, and then write back a property called FILES_EXIST with yes if they exist, and something else if they don't. You need to set [EMAIL PROTECTED] to 'check' or 'ignore' because you need the action to finish before the installer continues. The other actions attached to the 'Next' button are based on the value of FILES_EXIST which you've just written. The installation will either continue, or the user will get a pop-up dialog. This is FilesAbsentDlg. The user is told the files are not there, and clicks OK to go back to GetExistingFilesDlg. The mailing list appears to be banning zip files, so I've renamed the extension to .piz Rob P.S. I've not attached the binary files for the background images. [EMAIL PROTECTED] wrote: I'm working on an installer that depends upon files that the user has received prior to performing the installation. Our current installer (not windows installer based) prompts the user to browse for the location of the files... I'm trying to replicate this, but I'm not exactly sure how to go about it. On one hand I think I might need a custom action, on the other hand, that functionality is already part of WiX (i.e. using ConfigurableDirectory in a Feature) I'm not sure if it's accessible in the context I'd like, a separate step in the install sequence. Can anyone offer a suggestion on the correct course of action? - Take Surveys. Earn Cash. Influence the Future of IT Join
Re: [WiX-users] How to create folders and shortcuts in the Start Menu? (Wix 3.0)
What didn't work? Can you post your WiX fragment for us to look at? Only the portion of the wxs file that has the shortcut that you're trying to create. Did the installation go through, but your start menu folder not get created? What happened? On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi Levi, I tried the example you included, but it didn't work in Wix 3.0. Could you provide me a whole example please? Thanks, Erich. Levi Wilson wrote: There's this section: *Component* Id='Manual' Guid='YOURGUID-574D-4A9A-A266-5B5EC2C022A4' *File* Id='Manual' Name='Manual.pdf' DiskId='1' Source='Manual.pdf' *Shortcut* Id=startmenuManual Directory=ProgramMenuDir Name=Manual LongName=Instruction Manual / /*File* /*Component* And then there's the section that defines the ProgramMenuDir: *Directory* Id=ProgramMenuFolder Name=PMenu LongName=Programs *Directory* Id=ProgramMenuDir Name='Foobar10' LongName=Foobar 1.0 / /*Directory* The Directory / definition will create a folder in the startmenu named Foobar 1.0. This does this, because it's parent is the ProgramMenuFolder, which is one of the define System Folders found here: http://msdn2.microsoft.com/en-us/library/aa372057.aspx On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: I have read it, but it doesn't say anything about it (there are 2 mentions only about the way of creating shortcuts, but nothing about creating shortcuts and folders in the Start Menu). Cheers, Erich. Levi Wilson wrote: You should check out the tutorial linked off of the wix.sourceforge.netpage. On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi guys, I couldn't find any working example of how to create a folder in the Start Menu and then include some shortcuts inside. It looks to be quite easy, but I couldn't find the way to do that. Does anybody have any good example? Thanks, Erich. -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9491889 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9495618 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9498378 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
Re: [WiX-users] How to create folders and shortcuts in the Start Menu? (Wix 3.0)
Someone correct me if I'm wrong, but I think that if you want the shortcut installed for All Users, you need to define this property: Property Id=ALLUSERS Value=1 / If you don't, inside that Component / you can have this: RemoveFolder Id=MyRemFolder Directory=ProgramMenuFolder1 On=uninstall / On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Yes, the installation runs fine but doesn't create the folders in the Start Menu at all. I manage now to change the source to the following: File Id=ReleaseNotes Name=Dot Net SDK Release Notes.doc Source=$(var.TrunkComponentRelease)\Dot Net SDK Release Notes.doc Shortcut Id=NewShortcut3 Directory=ProgramMenuFolder1 LongName=NewShortcut3 Name=NewShort Advertise=yes Show=normal/ !--Shortcut Id=adguide Directory=DashMenuDir Name=AdGuide LongName=Agilent Business Dashboard Admin Guide WorkingDirectory=manuals Advertise=yes /-- /File Directory Id=ProgramMenuFolder Name=PMFolder Directory Id=ProgramMenuFolder1 Name=MyProduct / /Directory but I received the following error: Error 17 ICE64: The directory ProgramMenuFolder1 is in the user profile but is not listed in the RemoveFile table. D:\BlackDeath\SuperSolution\WixDotNetSDK\WixDotNetSDKRelease.wxs240 1 WixDotNetSDKRelease Thanks, Erich. Levi Wilson wrote: What didn't work? Can you post your WiX fragment for us to look at? Only the portion of the wxs file that has the shortcut that you're trying to create. Did the installation go through, but your start menu folder not get created? What happened? On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi Levi, I tried the example you included, but it didn't work in Wix 3.0. Could you provide me a whole example please? Thanks, Erich. Levi Wilson wrote: There's this section: *Component* Id='Manual' Guid='YOURGUID-574D-4A9A-A266-5B5EC2C022A4' *File* Id='Manual' Name='Manual.pdf' DiskId='1' Source='Manual.pdf ' *Shortcut* Id=startmenuManual Directory=ProgramMenuDir Name=Manual LongName=Instruction Manual / /*File* /*Component* And then there's the section that defines the ProgramMenuDir: *Directory* Id=ProgramMenuFolder Name=PMenu LongName=Programs *Directory* Id=ProgramMenuDir Name='Foobar10' LongName=Foobar 1.0 / /*Directory* The Directory / definition will create a folder in the startmenu named Foobar 1.0. This does this, because it's parent is the ProgramMenuFolder, which is one of the define System Folders found here: http://msdn2.microsoft.com/en-us/library/aa372057.aspx On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: I have read it, but it doesn't say anything about it (there are 2 mentions only about the way of creating shortcuts, but nothing about creating shortcuts and folders in the Start Menu). Cheers, Erich. Levi Wilson wrote: You should check out the tutorial linked off of the wix.sourceforge.netpage. On 3/15/07, Erich Buhler [EMAIL PROTECTED] wrote: Hi guys, I couldn't find any working example of how to create a folder in the Start Menu and then include some shortcuts inside. It looks to be quite easy, but I couldn't find the way to do that. Does anybody have any good example? Thanks, Erich. -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9491889 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- View this message in context: http://www.nabble.com/How-to-create-folders-and-shortcuts-in-the-Start-Menu--%28Wix-3.0%29-tf3407487.html#a9495618 Sent from the wix-users mailing list
Re: [WiX-users] verify file existance custom action
Can you post your CA C++ code? Also, you don't need to have a DLL custom action to check for the existence of a file. You can do something like this in your WiX source: Property Id=MyFileExists DirectorySearch Id=MyDirSearch Path=some path here Depth=1 FileSearch Id=MyFileSearch Name=myfile.extension / /DirectorySearch /Property If the file has been found, then the MyFileExists property will be set to the full path of your file. Is this what you're looking for? On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I read that managed code in a custom action is a no-no (please forgive me if I use the wrong terminology) so I am attempting to write my custom action without using managed code. Most examples I find seem to use it, however, so I'm doing the best I can. I wrote a simple VC++ app (.exe) that will determine if some files exist. I probably did it badly, but it worked in that context. I took the same code, and cut paste into a VC++ file I had setup to create my dll. The code was previously a working snippet that would simply set a msi property to true and return ERROR_SUCCESS. I am now trying to make it do something useful. After the cut paste I got some build errors and followed (somewhat) the steps listed here to resolve them. http://support.microsoft.com/?kbid=814472 The dll built successfully, but when I run the installer I get error 2896, Executing action [2] failed. That doesn't tell me too much. I stepped backwards until I had one line that I could comment/uncomment to make the dll work(return true)/not work(error 2896) The one line that causes it to fail (and concequently causes the dll to double in size) is: ifstream fin1(filename); Down the road I was doing 'if (fin1.good())' to see if the file exists (like I said, probably a bad way, but it was the first thing I did that seemed to work) Is attempting to do this fundamentally wrong? Also, I'm running the installer with /l* but I'm still not getting anything particularly helpful. Are there better techniques for debugging? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] verify file existance custom action
Hmmm, I've never used a directory search like that. So you're saying that your MYFOLDER property isn't getting set when the directory search is performed? I think you probably will need to maybe use a custom action then since I don't think you can dynamically manipulate a directory search, or tell it when to perform it as I think file searches get executed during the AppSearch sequence? I could be wrong, but I don't think you can use the FileSearch like this. On 3/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: That actually looks like exactly what I want… much cleaner than my C++ hackjob. That gives me a followup question, however. I plugged your suggestion (with Depth=0) into my dialog I use to browse to the directory that contains the file. It appears that the property I'm trying to set to the browsed-to directory doesn't contain the browsed-to directory when the DirectorySearch is performed. Dialog Id=GetExistingFilesDlg Width=370 Height=270 Title=[ProductName] [Setup] NoMinimize=yes Control Id=PathEdit Type=PathEdit X=84 Y=202 Width=261 Height=18 Property=MYFOLDER/ Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Default=yes Text=Next Property Id=MYFILEEXISTS DirectorySearch Id=MyDirSearch Path=[MYFOLDER] Depth=0 FileSearch Id=MyFileSearch Name= requiredfile.txt / /DirectorySearch /Property Publish Event=SpawnDialog Value=InvalidDirDlgNOT MYFILEEXISTS/Publish Publish Event=NewDialog Value=SetupTypeDlgMYFILEEXISTS/Publish /Control I initialized MYFOLDER with Property Id='MYFOLDER' Value='c:\' / This works if requiredfile.txt is in c:\ (I can see MYFILEEXISTS=c:\requiredfile.txt in the log) It doesn't work if I browse to the directory that contains the file (and of course I remove the file from c:\ ) Thanks for the help so far, this feels like a much better way than what I was previously attempting. -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, March 15, 2007 3:50 PM *To:* Rowland, Chris *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] verify file existance custom action Can you post your CA C++ code? Also, you don't need to have a DLL custom action to check for the existence of a file. You can do something like this in your WiX source: Property Id=MyFileExists DirectorySearch Id=MyDirSearch Path=some path here Depth=1 FileSearch Id=MyFileSearch Name=myfile.extension / /DirectorySearch /Property If the file has been found, then the MyFileExists property will be set to the full path of your file. Is this what you're looking for? On 3/15/07, * [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I read that managed code in a custom action is a no-no (please forgive me if I use the wrong terminology) so I am attempting to write my custom action without using managed code. Most examples I find seem to use it, however, so I'm doing the best I can. I wrote a simple VC++ app (.exe) that will determine if some files exist. I probably did it badly, but it worked in that context. I took the same code, and cut paste into a VC++ file I had setup to create my dll. The code was previously a working snippet that would simply set a msi property to true and return ERROR_SUCCESS. I am now trying to make it do something useful. After the cut paste I got some build errors and followed (somewhat) the steps listed here to resolve them. http://support.microsoft.com/?kbid=814472 The dll built successfully, but when I run the installer I get error 2896, Executing action [2] failed. That doesn't tell me too much. I stepped backwards until I had one line that I could comment/uncomment to make the dll work(return true)/not work(error 2896) The one line that causes it to fail (and concequently causes the dll to double in size) is: ifstream fin1(filename); Down the road I was doing 'if (fin1.good())' to see if the file exists (like I said, probably a bad way, but it was the first thing I did that seemed to work) Is attempting to do this fundamentally wrong? Also, I'm running the installer with /l* but I'm still not getting anything particularly helpful. Are there better techniques for debugging? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence
Re: [WiX-users] Help with Upgrade scenarios.
Does it complain about a different version of the product already being installed? If so, you need to install the MSI via the msiexec.exe command like this: msiexec.exe /I your_msi.msi REINSTALL=All REINSTALLMODE=vomus On 3/14/07, Rory Clark [EMAIL PROTECTED] wrote: In the project I'm working on, we've hit a pain point and we're not certain how to overcome it. Right now if we want to do an upgrade, the user has to uninstall before installing the new version. I am sure this has to be possible, I just need some pointers on the how to side of things. Thanks! Rory - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Help with Upgrade scenarios.
What are you trying to achieve? Are you trying to make it so you don't have to do that from the command-line? One thing that I think that you can do is set a property in your wxs file that is: Property Id=REINSTALLMODE Value=vomus / If you look at the MSDN documentation for the REINSTALLMODE property, you're not supposed to put the v in vomus on the initial installation, but I have never figured out why you're not supposed to do this. On 3/14/07, Rory Clark [EMAIL PROTECTED] wrote: That solved the short term problem, but isn't a long term solution. Looks like I need to do a lot more research and a lot more reading. Thanks! Rory -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 14, 2007 11:39 AM *To:* Rory Clark *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. Does it complain about a different version of the product already being installed? If so, you need to install the MSI via the msiexec.exe command like this: msiexec.exe /I your_msi.msi REINSTALL=All REINSTALLMODE=vomus On 3/14/07, Rory Clark [EMAIL PROTECTED] wrote: In the project I'm working on, we've hit a pain point and we're not certain how to overcome it. Right now if we want to do an upgrade, the user has to uninstall before installing the new version. I am sure this has to be possible, I just need some pointers on the how to side of things. Thanks! Rory - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Help with Upgrade scenarios.
Rob, Is there a short answer as to why you're not supposed to set the REINSTALLMODE property to vomus and just leave it like that? On 3/14/07, Rob Mensching [EMAIL PROTECTED] wrote: There is also the option of major upgrades that don't require command-line parameters at all. *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Wednesday, March 14, 2007 12:13 PM *To:* Rory Clark *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. What are you trying to achieve? Are you trying to make it so you don't have to do that from the command-line? One thing that I *think* that you can do is set a property in your wxs file that is: Property Id=REINSTALLMODE Value=vomus / If you look at the MSDN documentation for the REINSTALLMODE property, you're not supposed to put the v in vomus on the initial installation, but I have never figured out why you're not supposed to do this. On 3/14/07, *Rory Clark* [EMAIL PROTECTED] wrote: That solved the short term problem, but isn't a long term solution. Looks like I need to do a lot more research and a lot more reading. Thanks! Rory -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 14, 2007 11:39 AM *To:* Rory Clark *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. Does it complain about a different version of the product already being installed? If so, you need to install the MSI via the msiexec.exe command like this: msiexec.exe /I your_msi.msi REINSTALL=All REINSTALLMODE=vomus On 3/14/07, *Rory Clark* [EMAIL PROTECTED] wrote: In the project I'm working on, we've hit a pain point and we're not certain how to overcome it. Right now if we want to do an upgrade, the user has to uninstall before installing the new version. I am sure this has to be possible, I just need some pointers on the how to side of things. Thanks! Rory - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Set All Users desktop
I believe the ALLUSERS property needs to be set to 1 On 3/14/07, Bei Liu (Volt) [EMAIL PROTECTED] wrote: Can I set the desktop to point to all user? By using DesktopFolder, I can only set it to point to the per-user. Thanks, - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Help with Upgrade scenarios.
I thought that the v will run from the source (the msi that you're currently trying to install) and recache the local copy. When would it ask for the source media? On 3/14/07, Rob Mensching [EMAIL PROTECTED] wrote: v means any time you do a repair operation with the MSI, that the original source media will be required. Users **hate** that. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Wednesday, March 14, 2007 12:23 PM *To:* Rob Mensching *Cc:* Rory Clark; wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. Rob, Is there a short answer as to why you're not supposed to set the REINSTALLMODE property to vomus and just leave it like that? On 3/14/07, *Rob Mensching* [EMAIL PROTECTED] wrote: There is also the option of major upgrades that don't require command-line parameters at all. *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Wednesday, March 14, 2007 12:13 PM *To:* Rory Clark *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. What are you trying to achieve? Are you trying to make it so you don't have to do that from the command-line? One thing that I *think* that you can do is set a property in your wxs file that is: Property Id=REINSTALLMODE Value=vomus / If you look at the MSDN documentation for the REINSTALLMODE property, you're not supposed to put the v in vomus on the initial installation, but I have never figured out why you're not supposed to do this. On 3/14/07, *Rory Clark* [EMAIL PROTECTED] wrote: That solved the short term problem, but isn't a long term solution. Looks like I need to do a lot more research and a lot more reading. Thanks! Rory -- *From:* Levi Wilson [mailto: [EMAIL PROTECTED] *Sent:* Wednesday, March 14, 2007 11:39 AM *To:* Rory Clark *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Help with Upgrade scenarios. Does it complain about a different version of the product already being installed? If so, you need to install the MSI via the msiexec.exe command like this: msiexec.exe /I your_msi.msi REINSTALL=All REINSTALLMODE=vomus On 3/14/07, *Rory Clark* [EMAIL PROTECTED] wrote: In the project I'm working on, we've hit a pain point and we're not certain how to overcome it. Right now if we want to do an upgrade, the user has to uninstall before installing the new version. I am sure this has to be possible, I just need some pointers on the how to side of things. Thanks! Rory - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Install only on XP SP2 or better
I don't believe you can set properties like that. Instead, use your VersionNT=... conditions inside the Condition / element. That should work. On 3/14/07, Nick [EMAIL PROTECTED] wrote: I'm trying to make some code that installs only on Windows: XP SP2 or better, 2003 SP1 or better, or Vista or better. I'm using the code below, and my application happily installs itself on Win2000. What am I doing wrong? Property Id=WIN2KSP4EXISTS![CDATA[VersionNT = 500 AND ServicePackLevel =4]]/Property Property Id=WINXPSP2EXISTS![CDATA[VersionNT = 501 AND ServicePackLevel =2]]/Property Property Id=WIN2K3SP1EXISTS![CDATA[VersionNT = 502 AND ServicePackLevel =1]]/Property Property Id=WINVISTAORBETTEREXISTS![CDATA[VersionNT 502]]/Property Condition Message=This setup requires Windows XP with Service Pack 2.![CDATA[WINXPSP2EXISTS OR WIN2K3SP1EXISTS OR WINVISTAORBETTEREXISTS]]/Condition - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Votive v3 and UI
When using WiX UI stuff from the WixUIExtension DLL in version 3, you need to add: -ext WixUIExtension -cultures:en-us To the light command-line. This should take care of a lot of those warnings. On 3/13/07, Chris Bardon [EMAIL PROTECTED] wrote: I've been going through the tuorial at http://www.tramontana.co.hu/wix/ and adapting to some of the v3 changes as I go, and I've run across a problem with adding UI elements. If I put in the UIRef elements UIRef Id= WixUI_Mondo / and UIRef Id=WixUI_ErrorProgressText / I get an unresolved symbol reference. Makes sense, since there's no reference to the UI lib. I checked in the target directory for the Votive/WiX MSI from the website though, and there's no wixlib files in the install directory. There's a WixUIExtension.dll that I can reference, but this doesn't seem to have any of the strings defined (LGHT0102 gets raised 552 times). It looks like I have to link using the WXL file for the language, but none of the WXL files are installed with the package. Is there no way to build an installer without downloading the source? Since I'm trying to set up a build process for Wix editing/installer creation where any developer on the team can edit/publish installers, I'd rather have everything they need to be encapsulated in a redstributable (i.e. not a separate source download). Is there just something that I'm missing with getting Votive to build using a UI? Thanks for the help Chris - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Votive v3 and UI
You can customize the bitmaps by adding WixVariable / elements to your wxs file. here are a few that you can modify: WixVariable Id=WixUILicenseRtf Value=your_license.rtf / WixVariable Id=WixUIBannerBmp Value=your_banner.bmp / WixVariable Id=WixUIDialogBmp Value=your_dlgbmp.bmp / There are more too, such as various icons and such, which I think you can find in the source code. I'm not sure how you can modify the command-line parameters to WiX if you're using VS for your projects, so someone might have to help shed light on this for you and me both. I typically do everything from the command-line or in a batch file for my projects because I think that I ran into that very same issue, and bit the bullet. On 3/13/07, Chris Bardon [EMAIL PROTECTED] wrote: Thanks for the reply-I managed to get it to work by adding a copy of the .wxl to the project, but I can't find anywhere to modify the light command line in the project. Am I just missing something obvious? On a semi-related note, is there something special you have to do with Votive to customize bitmaps from one of the UI libs? I tried creating a bitmaps directory, below the wxs file, but it seems to be ignored (regardless of whether the new bitmaps are added to the project or not). Is it not possible to customize the dialogs when using the WixUIExtension DLL? I'm planning on creating my own UI lib based off of Mondo, but I'd like to be able to customize it with different graphics when referenced in different setups. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Tuesday, March 13, 2007 11:50 AM *To:* Chris Bardon *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Votive v3 and UI When using WiX UI stuff from the WixUIExtension DLL in version 3, you need to add: -ext WixUIExtension -cultures:en-us To the light command-line. This should take care of a lot of those warnings. On 3/13/07, *Chris Bardon* [EMAIL PROTECTED] wrote: I've been going through the tuorial at http://www.tramontana.co.hu/wix/ and adapting to some of the v3 changes as I go, and I've run across a problem with adding UI elements. If I put in the UIRef elements UIRef Id = WixUI_Mondo / and UIRef Id= WixUI_ErrorProgressText / I get an unresolved symbol reference. Makes sense, since there's no reference to the UI lib. I checked in the target directory for the Votive/WiX MSI from the website though, and there's no wixlib files in the install directory. There's a WixUIExtension.dll that I can reference, but this doesn't seem to have any of the strings defined (LGHT0102 gets raised 552 times). It looks like I have to link using the WXL file for the language, but none of the WXL files are installed with the package. Is there no way to build an installer without downloading the source? Since I'm trying to set up a build process for Wix editing/installer creation where any developer on the team can edit/publish installers, I'd rather have everything they need to be encapsulated in a redstributable (i.e. not a separate source download). Is there just something that I'm missing with getting Votive to build using a UI? Thanks for the help Chris - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Votive v3 and UI
Maybe that's what it was...that it was TOO easy :-) I usually miss those. On 3/13/07, Simon Dahlbacka [EMAIL PROTECTED] wrote: Yes, (at least semi obvious) Using votive you select project properties (right-click project - properties, select linker tab) specify e.g. en-US in the Cultures textbox, and add a reference to WixUIExtension On 3/13/07, Chris Bardon [EMAIL PROTECTED] wrote: Thanks for the reply-I managed to get it to work by adding a copy of the .wxl to the project, but I can't find anywhere to modify the light command line in the project. Am I just missing something obvious? On a semi-related note, is there something special you have to do with Votive to customize bitmaps from one of the UI libs? I tried creating a bitmaps directory, below the wxs file, but it seems to be ignored (regardless of whether the new bitmaps are added to the project or not). Is it not possible to customize the dialogs when using the WixUIExtension DLL? I'm planning on creating my own UI lib based off of Mondo, but I'd like to be able to customize it with different graphics when referenced in different setups. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Tuesday, March 13, 2007 11:50 AM *To:* Chris Bardon *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Votive v3 and UI When using WiX UI stuff from the WixUIExtension DLL in version 3, you need to add: -ext WixUIExtension -cultures:en-us To the light command-line. This should take care of a lot of those warnings. On 3/13/07, *Chris Bardon* [EMAIL PROTECTED] wrote: I've been going through the tuorial at http://www.tramontana.co.hu/wix/ and adapting to some of the v3 changes as I go, and I've run across a problem with adding UI elements. If I put in the UIRef elements UIRef Id = WixUI_Mondo / and UIRef Id= WixUI_ErrorProgressText / I get an unresolved symbol reference. Makes sense, since there's no reference to the UI lib. I checked in the target directory for the Votive/WiX MSI from the website though, and there's no wixlib files in the install directory. There's a WixUIExtension.dll that I can reference, but this doesn't seem to have any of the strings defined (LGHT0102 gets raised 552 times). It looks like I have to link using the WXL file for the language, but none of the WXL files are installed with the package. Is there no way to build an installer without downloading the source? Since I'm trying to set up a build process for Wix editing/installer creation where any developer on the team can edit/publish installers, I'd rather have everything they need to be encapsulated in a redstributable (i.e. not a separate source download). Is there just something that I'm missing with getting Votive to build using a UI? Thanks for the help Chris - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Password input during the installation
You could use the @Password attribute of the Edit control. On 3/9/07, pobox77 [EMAIL PROTECTED] wrote: Hi, I ask the user to enter a password during the installation, which I then write into a config file (xmlfile). Do wix have a password input field instead of edit field to be able to hide the entered password ( * instead of readable characters)? If not, could somebody send me an example how to do this? (Custom action, ...) Thanks in advance, Peter - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Heat. Can it not generate registry entries?
I'm not sure about having heat *not* generate registry entries, but here is an article that was written about heat that might be useful: http://installing.blogspot.com/2006/04/heatexe-making-setup-easier.html On 3/9/07, Scott Sam [EMAIL PROTECTED] wrote: I want to you use heat to create the wix files for the latest version of our product, but I can't find any documentation for it. Is there any out there? The problem I'm having is that heat automatically generates registry entries for any dll in the directory, but I don't want it to. Anyone know how to turn that off? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Heat. Can it not generate registry entries?
Why is it exactly that you don't want it to generate the registry values? On 3/9/07, Scott Sam [EMAIL PROTECTED] wrote: Thanks, I saw that already. It only gives very basic info, I was hoping for some more in depth documentation. It would really be helpful if I could get the wxs files create by heat without the registry entries. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Friday, March 09, 2007 10:07 AM *To:* Scott Sam *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Heat. Can it not generate registry entries? I'm not sure about having heat *not* generate registry entries, but here is an article that was written about heat that might be useful: http://installing.blogspot.com/2006/04/heatexe-making-setup-easier.html On 3/9/07, *Scott Sam* [EMAIL PROTECTED] wrote: I want to you use heat to create the wix files for the latest version of our product, but I can't find any documentation for it. Is there any out there? The problem I'm having is that heat automatically generates registry entries for any dll in the directory, but I don't want it to. Anyone know how to turn that off? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Accessing Target Computers Environment Variables
Probably a Type 51 custom action? On 3/8/07, Shankar Manian [EMAIL PROTECTED] wrote: Hi, I need to access environment variable COMPUTERNAME of the TargetComputer and use it to set a propertyhow do i do that in WIX ? I am using WIX 2.0 Thanks shankar - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] How to insert Hyperlink/URL in MSI UI text
AFAIK there is no support for that in the Windows Installer On 3/1/07, Manikyam Bavandla [EMAIL PROTECTED] wrote: Hi All I want to show some text in MSI UI, like Click here for more detailshttp://sharepoint/sites/wix/default.aspx, so that user can click this text for more details. How to show an URL in MSI UI text control? I mean, which WIX control is suitable for showing hyperlink embedded text in MSI UI? Your help in this regard is highly appreciated. Thanks in advance Manikyam - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WiX v3 ATL Service Install
I have a service that is an ATL service as well. This may not be the same situation, but I had to add a RegistryValue/ element in the HKLM\Software\Classes\AppID\MY-SERVICE-GUID with the @Name=LocalService and the @Value=[service name] to get it to work. I think that's the same thing that the svc.exe /Service does. On 2/21/07, Lexa Rogovoy [EMAIL PROTECTED] wrote: Hello. I want to install simple ATL Service. In WiX script i am adding next string: Component Id=Service Guid=---- File Id=svc Name=svc.exe DiskId=1 Source=svc.exe KeyPath=yes Vital=yes AppId Id=---- Advertise=no LocalService=my service / TypeLib Id=---- Advertise=no Description=svc 1.0 Type Library Language=0 MajorVersion=1 MinorVersion=0 Class Id=---- Advertise=no Description=SvcObj Class Context=LocalServer32 Programmable=yes ProgId Id=svc.SvcObj.1 Description=SvcObj Class ProgId Id=svc.SvcObj Description=SvcObj Class / /ProgId /Class /TypeLib /File ServiceInstall Id=svcI Name=svc Description=my service Type=ownProcess Start=auto ErrorControl=normal DisplayName=my service / /Component After install i try to start service and get next error: --- Services --- Could not start the my service service on Local Computer. Error 1053: The service did not respond to the start or control request in a timely fashion. --- OK --- If i do svc.exe /Service - all work. -- Lexa - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Reg. Disabling Remove from Windows Defender, and Upgrade feature
1.) Maybe if you set the ALLUSERS property to 1 that would take care of it? 2.) Someone correct me if I'm wrong, but it sounds like a major upgrade is what you're talking about. I think that if you change the version string it will do a major upgrade? The major upgrade from my understanding will uninstall the previous version, and install the new version. If you use the same product Guid, I think that's how it finds the previous version, and you don't have to do anything yourself. If you want to package the msi into an exe, on the WiX sourceforge page there's a nice bootstrapper sample project that is akin to msistuff.exe in that, well, it is msistuff.exe with an additional option to package an msi file right into the exe. On 2/21/07, Vidhya Sagar Bhogavalli (Infosys Technologies Ltd) [EMAIL PROTECTED] wrote: Hi All, I've a couple of queries on WIX installers. 1. I've created an installer for Windows Vista. I've disabled the Remove feature from Add/Remove Programs by setting the ARPNOREMOVE property to 1. This has also disabled the Remove option from Windows Defender. Though, When I click on Show All Users in Windows Defender, the Remove is enabled. But I want the Remove option to be disabled even for Sow All Users. Is there any property that I can set to do this or any custom action that would help the cause? 2. I want to check if a previous version of the Product already exists and If it does, I want to uninstall it and then install the current version. Though, I cannot resort to the Upgrade feature because it mandates the use of the ReinstallAll property with the msiexec command. Otherwise, it mandates the change of the Product GUID as a major Upgrade. But I don't want to change the product GUID either. I want to do the uninstall of the previous version and then proceed with the current installation from within the .msi. Also, I don't want to write a wrapper Setup.exe which would in turn call the msiexec command with the ReInstallAll property. Is there a possible way of doing this from the .msi? Please mail me If you have a solution for either of my queries. Thanks In Advance, Sagar - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WiX v3 ATL Service Install
You know what, I'm almost certain that was my problem too. Not that I think of it, that's why I resorted to writing directly to the HKLM\Software\Classes\AppID\... key, because writing to HKCR didn't work. On 2/21/07, Lexa Rogovoy [EMAIL PROTECTED] wrote: Hello, Levi. You wrote Wednesday, February 21, 2007, 5:37:18 PM: I have a service that is an ATL service as well. This may not be the same situation, but I had to add a RegistryValue/ element in the HKLM\Software\Classes\AppID\MY-SERVICE-GUID with the @Name=LocalService and the @Value=[service name] to get it to work. I think that's the same thing that the svc.exe /Service does. https://lists.sourceforge.net/lists/listinfo/wix-users Thx. Yes, this is ATL service and in my sample all class and interface installed to the HKCU, but i am add Property Id=ALLUSERS1/Property and all my data installed to HKLM and work fine. -- Lexa - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] WixLocalization/@Culture attribute was not found
For the cultures problem you need to add it to the light command line in the -cultures parameter like so: -cultures:en-us On 2/20/07, dave_c [EMAIL PROTECTED] wrote: Should have added. Here is the start of my WIX file ?xml version='1.0' encoding='windows-1252'? Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' Product Name='Agilent Business Dashboard' Id='{38C10847-BBCD-4cfe-9A72-4FB8439B9D8D}' UpgradeCode='{3537D324-B5EC-4ed0-B41A-434A3534D855}' Language='1033' Codepage='1252' Version='1.0.0' Manufacturer='Agilent Technologies (UK) Ltd' Package Keywords='Installer' Description=Agilent Business Dashboard using Business Objects Comments='Agilent Business Dashboard is a registerd component by Agilent Technologies UK Ltd' Manufacturer='Agilent Technologies (UK) Ltd' InstallerVersion='100' Languages='1033' Compressed='no' SummaryCodepage='1252' / !-- Determines what the install level is for components being installed-- Property Id='INSTALLLEVEL' Value='3'/ Property Id='CUSTOMERNAME' Value='Orange UK'/ Media Id='1' Cabinet='Product.cab' EmbedCab='yes' DiskPrompt=CD-ROM #1 / Property Id='DiskPrompt' Value=Agilent Business Dashboard Installer [1] / !-- Let's include a fragment which all it has is a list of possible directories to use -- FragmentRef Id=DIRECTORYDEF/ I'm guessing I need to add the WixLocalization and Culture definitions somewhere in here but don't know where. --- dave_c wrote: I have just recently moved from using wix2 to using wix3. After removing all the shortname I tried to build the relase and got the error message mentioned above. Does anyone know what I need to do to fix these problems. Also, is there a link/URL to somewhere that explains the differences between wix2 and wix3 C:\wirelessDashboard\DashboardBuildREM c:\wix_3.0.2612.0\light -out BusinessDas hboard.msi ServerExecutables.wixobj BusinessDashboard.wixobj Conditions.wixobj N ewDirectories.wixobj IconDefinitions.wixobj DirectoryDefinitions.wixobj ClientF eatures.wixobj ClientExecutables.wixobj ClientDocuments.wixobj ModifiedBOFiles.w ixobj ServerFeatures.wixobj ServerGraphics.wixobj AgilentScripts.wixobj OrangeGr aphics.wixobj wixui\AgilentWixUI_Mondo.wixlib -loc c:\wix\WixUI_en- us.wxl C:\wirelessDashboard\DashboardBuildc:\wix_3.0.2612.0\light -out BusinessDashboa rd.msi *.wixobj wixui\AgilentWixUI_Mondo.wixlib -loc c:\wix_3.0.2612.0\WixUI_en- us.wxl Microsoft (R) Windows Installer Xml Linker version 3.0.2612.0 Copyright (C) Microsoft Corporation 2003. All rights reserved. c:\wix_3.0.2612.0\WixUI_en-us.wxl : error LGHT0010 : The WixLocalization/@Cultur e attribute was not found; it is required. -- View this message in context: http://www.nabble.com/WixLocalization-%40Culture-attribute-was-not-found-tf3260634.html#a9063270 Sent from the wix-users mailing list archive at Nabble.com. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] How to use a Property Value to create another Property
Have you tried: Property Id='VDDIR' Value=[MAINDIR]webmain / I think that should resolve to what you want. On 2/14/07, Nick Hennemann [EMAIL PROTECTED] wrote: *I have the following Property MAINDIR and it is populated correctly from the registry….* Property Id=*'MAINDIR'* RegistrySearch Id='AppInstallRegistrySearch' Type='raw' Root='HKLM' Key='Software\OurSoftwareCompany\SoftwareName' Name='Install Directory' / /Property And then I have another property call VDDIR and I use the MAINDIR property to help build the path for my virtual directory….however I can see that instead of the path being built by replacing the MAINDIR property with it's value it simply is leaving the path with [MAINDIR] . Here are the properties as reported in the MSI log: *Property(S): MAINDIR = C:\PROGRA~1\SoftwareDir\* *Property(S): VDDIR = [MAINDIR]webmain* * * Property Id='VDDIR'*[MAINDIR]*webmain/Property *How do I use the value from one Property in another one? Any help would be greatly appreciated. It appears that maybe it is defining the property of VDDIR before it is getting the value of MAINDIR...if so how can I ensure that MAINDIR is populated first. TIA.* *Here is an excerpt from the WiX tutorial that shows how to do it, but I can't seem to make it work. Anyone able to get this to work? * *Property* Id=*INSTALLDIR* *IniFileSearch* Id='AcmeFoobarIniFile' Type='directory' Name='SampleRegistry.ini' Section='Sample' Key='InstallDir' / /*Property* There might be cases when simply knowing the directory is not enough: you have to look into the directory and make sure a given file exists there. * Depth = n* can be used to instruct the installer to look *n* levels deeper than the specified *Path.* Zero or a missing *Depth* attribute means only to look in the specified folder, not below it. We use square brackets in * Path* to tell the installer to use the *value* of the *INSTALLDIR*property—bracketed names will be looked up and if found, replaced with their actual value. If not found, the string will remain unchanged. *Property* Id=FILEEXISTS *DirectorySearch* Id=CheckFileDir Path=[*INSTALLDIR*] Depth=0 *FileSearch* Id=CheckFile Name=Lookfor.txt / /*DirectorySearch* /*Property* NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Kernel Drivers
Has this issue been resolved with WiX v3 and DIFxApp? On 1/30/07, Rob Mensching [EMAIL PROTECTED] wrote: There is a bug open on WiX v3 about not quite integrating correctly with DIFxApp. *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Tuesday, January 30, 2007 5:27 AM *To:* Quinton Tormanen *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Kernel Drivers Alright, I'm trying to give this DIFxApp a shot. I'm using Version 3 of WiX, and it will not allow me to put DriverXXX attributes in the component. Nor will it allow me to use the Driver/ element inside my component. I've been trying to go through the article found here ( http://msdn2.microsoft.com/en-gb/library/ms790289.aspx) but can't seem to get past this. Which version of WiX did you use when using DIFxApp? On 1/29/07, *Quinton Tormanen* [EMAIL PROTECTED] wrote: DIFxApp will install hardware drivers if you provide it with the .INF file(s) and the referenced files from the package. Whether a file system driver fits that bill is over my head, although it sounds a bit different. DIFxApp does the equivilant of SetupCopyOemInf and then some. It's job is to get the driver into the driver store. I know that hardware .INF files often include an AddService question, but it sounds like you'll need to wait for one of the big guns to reply to your request... --Quinton -- *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Monday, January 29, 2007 1:26 PM *To:* Quinton Tormanen *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Kernel Drivers I neglected to mention that this is not a hardware driver, it is a file system driver. In InstallShield parlance, I used to call _CreateNTService to install it. Is there an equivalent WiX element to achieve this since the ServiceInstall/ doesn't support the @Type=kernelDriver ? Is DIFxAppexactly what I need? Also, why does Windows Installer not support the kernelDriver type? On 1/29/07, *Quinton Tormanen* [EMAIL PROTECTED] wrote: I just added USB drivers to our application installer. The toolkit I used is DIFxApp, which integrates VERY well with WiX. They've even got an example for WiX. The website for DIFx Tools is www.microsoft.com/whdc/driver/install/difxtools.mspx . However, beware that that website doesn't have the latest. It has version 2.01, which doesn't support Vista. To get the newest version (2.1), grab the WDK for Vista. Once you've got DIFx Tools, look at the DIFxApp component and its WiX examples. They read through the Driver* attributes under the Component element, and you should be well on your way! You shouldn't need your own CA (the DIFxApp WiXLib includes its own CAs). Hope this helps! --Quinton -- *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Monday, January 29, 2007 7:29 AM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Kernel Drivers What is the proper way to install a kernel mode driver? I noticed in the help file that the ServiceInstall/ tag says that Windows Installer does not currently support kernelDriver or systemDriver. Do I need to make an INF install and use a CA to perform a rundll32 on it? Any help would be greatly appreciated. Levi - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Type 1 Custom Action
Well, basically my CA (MyInfCA) installs a file-system driver by calling InstallHinfSection on the inf. My type 51 CA is currently setting the MyInfCA property to the path of the inf file. This works fine, but I wasn't sure if it was that proper way to do it. I can see that if my CA needed more information than just the path of the file, type 51 CAs would be a nuisance, and I would need to resort to something else. In this case, I guess I would need another DLL CA that would run Immediate that would setup my values, but how you would accomplish this with the wcautil is a bit unclear to me. I imagine the same sort of process, in that I would pack all of the data into a property called MyInfCA like I am now but instead do it by using the WcaWriteStringToCaData, is this correct? And then read it using the WcaReadStringFromCaData? But what I was not sure on was the format in which these were added in there. Each of those functions take two parameters, and the second one is the string. Would you normally just pack in [name]=[value] pairs in there and then have to break up the strings myself? Thanks for any insight into this process. On 2/10/07, Rob Mensching [EMAIL PROTECTED] wrote: Depends on what you are trying to accomplish. CustomActions that modify the system state (the reason to create deferred CustomActions) should be data driven. A property **may** be sufficient to pass data but rarely is enough. That's why I pointed you at the existing WiX CustomActions. They handle all the cases that CustomActions need to handle. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Friday, February 09, 2007 6:54 AM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action Would it be easier to have Type 51 CAs that set a property named the same as my CA and just retrieve CustomActionData from my CA? I guess, what is the advantage of using wcautil? I realize that there is a TON of functionality there, but it doesn't seem too intuitive to use with my minimal Windows Installer experience. It guess I just don't get the process that I would use wcautil to setup a data driven MSI like you mention. I'm sorry if I'm being obtuse...could you please elaborate? Thanks again for all of your help/time. On 2/8/07, *Rob Mensching* [EMAIL PROTECTED] wrote: Well, if you want a data driven MSI then you need to have an immediate mode CustomAction to encode data into the CustomActionData and then have the deferred CustomAction chop it up. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, February 08, 2007 2:12 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action Correct me if I'm wrong, but in my case, I just need to call WcaInitialize in the beginning of my CA, call WcaGetProperty, execute my CA, then call WcaFinalize? On 2/8/07, *Rob Mensching* [EMAIL PROTECTED] wrote: Yes, there is very little documentation (I've been spending my time fixing bugs, not explaining how to use it smile/). Yes, the SDK directory should have everything you need. Use the header files that you need. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] ] *Sent:* Thursday, February 08, 2007 1:42 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action I see the wcautil.lib in the SDK directory...which header file do I use? Is the documentation to use wcautil only exist in the header file? On 2/8/07, *Rob Mensching *[EMAIL PROTECTED] wrote: Correct, you have to use CustomActionData. I encourage you to take a look at the WiX CustomActions. They do all this stuff. Dutil.lib and Wcautil.lib also has tons of helper functions that make life much easier. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] ] *Sent:* Thursday, February 08, 2007 1:32 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action Just to clarify, this means that I can't access any properties from my CA? And if so, how do you pass a value (CustomActionData?) to a particular CA in WiX parlance? On 2/8/07, *Rob Mensching* [EMAIL PROTECTED] wrote: Yes. You have to run in script (deferred). *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Thursday, February 08, 2007 1:24 PM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Type 1 Custom Action Does a type 1 custom action have to be deferred in order to get it to run AFTER the files have already been installed? It seems when I set it up like this: CustomAction Id=MyCA BinaryKey=CADll DllEntry=MyCA / InstallExecuteSequence Custom Action=MyCA After=InstallServicesNOT Installed/Custom /InstallExecuteSequence When the CA executes, the files haven't been copied yet? Why does this CA run before the files have been copied? - Using Tomcat
Re: [WiX-users] Heat and COM Registry Permissions
Hmm, all seems to be well if I set ALLUSERS=1 grin /. Apparently the default of an MSI is a per-user installation. So this isn't an issue with heat or registry permissions at all, but user error. Is this typical in most installations where you have to explicitly set ALLUSERS=1? On 2/12/07, Levi Wilson [EMAIL PROTECTED] wrote: I have been using heat.exe to generate my version 3 information for files. For my COM objects, I noticed a strange behavior. Heat.exe seems to properly setup the registry keys that I need, but the permissions on the CLSID\[my guid] keys differ than those that would be set if I used regsvr32 on the same DLL. Has anyone else experienced this? Here are the permissions that get setup for one of my CLSID\[GUID] key that is associated with my COM object: Name PermissionInherited From --- - local\Admin Full Control CLASSES_ROOT\CLSID SYSTEM Full Control CLASSES_ROOT\CLSID Administrators Full Control CLASSES_ROOT\CLSID RESTRICTED ReadCLASSES_ROOT\CLSID When it is registered by regsvr32 I get the following: Name PermissionInherited From --- Users ReadParent Object Power UsersSpecial Parent Object local\Admin Full Control CLASSES_ROOT\CLSID SYSTEM Full ControlCLASSES_ROOT\CLSID SYSTEM Full ControlParent Object Administrators Full Control CLASSES_ROOT\CLSID Administrators Full Control Parent Object CREATOR OWNER Full Control Parent Object What happens in my program, is when our service calls CoCreateInstance on the COM object, it fails that that class is not registered. The service is running as local system. However, when instantiating a COM object from a process run as local\admin it works fine. Am I not setting something up properly? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Property Modularization
Would it be bad to check the existence of one of the components then from the merge module from _outside_ of the merge module? For instance, if I have one of the components (component1.[guid]) condition of two properties contained in my merge module, and I have some UI outside of the merge module, can I condition some text to be displayed depending upon whether component1.[guid] is being installed? Is that a bad practice? On 2/7/07, Bob Arnson [EMAIL PROTECTED] wrote: Levi Wilson wrote: Alright, I'll try to tread slowly through this one... I have a merge module that has a settings file that is packaged with it. I have a file search setup within my merge module that sets an OLDSETTINGS property. Now, here is where things get fuzzy. IF the OLDSETTINGS exist, the module will not install the default settings (packaged with it), but instead copy the old ones over. If the OLDSETTINGS do NOT exist, it will use the default. The problem that I am running into is that I have a UI page that has a static text element that will display to the user information about the default settings (when they're used). Now, since the Properties from the merge module are modularized, the UI can't access that property. So, if I suppress the modularization to get rid of that, then when I Condition / my Component / based upon the OLDSETTINGS property, IT gets modularized (even though I don't want it to). Has anyone ran into this situation before? Any help would be greatly appreciated. Please let me know if more details are needed. Short answer: Merge modules aren't spec'd to support what you're looking for. They should be self-contained, so when they're merged into a feature, its action state determines whether their components get installed. One option I've seen teams use is to build a merge module from a .wixobj/.wixlib. The internal product consumes the .wixobj/.wixlib but the redistribution is the merge module. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Type 1 Custom Action
Does a type 1 custom action have to be deferred in order to get it to run AFTER the files have already been installed? It seems when I set it up like this: CustomAction Id=MyCA BinaryKey=CADll DllEntry=MyCA / InstallExecuteSequence Custom Action=MyCA After=InstallServicesNOT Installed/Custom /InstallExecuteSequence When the CA executes, the files haven't been copied yet? Why does this CA run before the files have been copied? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Type 1 Custom Action
Just to clarify, this means that I can't access any properties from my CA? And if so, how do you pass a value (CustomActionData?) to a particular CA in WiX parlance? On 2/8/07, Rob Mensching [EMAIL PROTECTED] wrote: Yes. You have to run in script (deferred). *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Thursday, February 08, 2007 1:24 PM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Type 1 Custom Action Does a type 1 custom action have to be deferred in order to get it to run AFTER the files have already been installed? It seems when I set it up like this: CustomAction Id=MyCA BinaryKey=CADll DllEntry=MyCA / InstallExecuteSequence Custom Action=MyCA After=InstallServicesNOT Installed/Custom /InstallExecuteSequence When the CA executes, the files haven't been copied yet? Why does this CA run before the files have been copied? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Type 1 Custom Action
I see the wcautil.lib in the SDK directory...which header file do I use? Is the documentation to use wcautil only exist in the header file? On 2/8/07, Rob Mensching [EMAIL PROTECTED] wrote: Correct, you have to use CustomActionData. I encourage you to take a look at the WiX CustomActions. They do all this stuff. Dutil.lib and Wcautil.lib also has tons of helper functions that make life much easier. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, February 08, 2007 1:32 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action Just to clarify, this means that I can't access any properties from my CA? And if so, how do you pass a value (CustomActionData?) to a particular CA in WiX parlance? On 2/8/07, *Rob Mensching* [EMAIL PROTECTED] wrote: Yes. You have to run in script (deferred). *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Thursday, February 08, 2007 1:24 PM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Type 1 Custom Action Does a type 1 custom action have to be deferred in order to get it to run AFTER the files have already been installed? It seems when I set it up like this: CustomAction Id=MyCA BinaryKey=CADll DllEntry=MyCA / InstallExecuteSequence Custom Action=MyCA After=InstallServicesNOT Installed/Custom /InstallExecuteSequence When the CA executes, the files haven't been copied yet? Why does this CA run before the files have been copied? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Type 1 Custom Action
Correct me if I'm wrong, but in my case, I just need to call WcaInitialize in the beginning of my CA, call WcaGetProperty, execute my CA, then call WcaFinalize? On 2/8/07, Rob Mensching [EMAIL PROTECTED] wrote: Yes, there is very little documentation (I've been spending my time fixing bugs, not explaining how to use it smile/). Yes, the SDK directory should have everything you need. Use the header files that you need. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, February 08, 2007 1:42 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action I see the wcautil.lib in the SDK directory...which header file do I use? Is the documentation to use wcautil only exist in the header file? On 2/8/07, *Rob Mensching *[EMAIL PROTECTED] wrote: Correct, you have to use CustomActionData. I encourage you to take a look at the WiX CustomActions. They do all this stuff. Dutil.lib and Wcautil.lib also has tons of helper functions that make life much easier. *From:* Levi Wilson [mailto:[EMAIL PROTECTED] *Sent:* Thursday, February 08, 2007 1:32 PM *To:* Rob Mensching *Cc:* wix-users@lists.sourceforge.net *Subject:* Re: [WiX-users] Type 1 Custom Action Just to clarify, this means that I can't access any properties from my CA? And if so, how do you pass a value (CustomActionData?) to a particular CA in WiX parlance? On 2/8/07, *Rob Mensching* [EMAIL PROTECTED] wrote: Yes. You have to run in script (deferred). *From:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *On Behalf Of *Levi Wilson *Sent:* Thursday, February 08, 2007 1:24 PM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Type 1 Custom Action Does a type 1 custom action have to be deferred in order to get it to run AFTER the files have already been installed? It seems when I set it up like this: CustomAction Id=MyCA BinaryKey=CADll DllEntry=MyCA / InstallExecuteSequence Custom Action=MyCA After=InstallServicesNOT Installed/Custom /InstallExecuteSequence When the CA executes, the files haven't been copied yet? Why does this CA run before the files have been copied? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Adding tons of files to an MSI
In version 3 tallow.exe does not exist. You will need to use heat.exe. It's very easy to do this There is a good explanation of it here http://installing.blogspot.com/2006/04/heatexe-making-setup-easier.html of how to use it. Typically you'll run it like this (to do what you want): heat.exe dir c:\mydir -template:product -gg -out mydir.wxs On 2/6/07, Nick Hennemann [EMAIL PROTECTED] wrote: take a look at the tallow.exe command...very helpful for this type of situation. -- *From:* [EMAIL PROTECTED] on behalf of Very Secret *Sent:* Tue 2/6/2007 4:31 AM *To:* wix-users@lists.sourceforge.net *Subject:* [WiX-users] Adding tons of files to an MSI Can anyone help me to automatically add a directory and all its contents to an MSI? The problem: I have a directory whose contents is auto generated and therefore can be considered fairly random. The directory may contain thousands of files so adding them manually with the File ... tag is not an option. My question: How can I add the directory, say myDir, and all the files in myDir to the MSI automatically? Are there some File Source=myDir\* ... / option? (I am using the latest version of Wix 3) - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SpawnDialog resulting from Next button?
It didn't seem to work. My other idea about using the MsiProcessMessage didn't work either. For some reason, it looks like MsiProcessMessage doesn't work from a CA when the CA is invoked from a Control Event? I started a thread on the msi newsgroup ( http://groups.google.com/group/microsoft.public.platformsdk.msi/browse_frm/thread/ab238b41a3c3bdba/f66bc13978b31ab1?lnk=gstq=%22message+box%22rnum=2#f66bc13978b31ab1 ) but I haven't gotten anything to work just yet. Thanks for your help. On 2/6/07, Bob Arnson [EMAIL PROTECTED] wrote: Levi Wilson wrote: One clarification is that the restriction applies only to those control events with the same conditions. So you might be able to make it work if you change a property in the spawned dialog. Can you clarify this? Here are all of the entries in my ControlEvent table that pertain to the dialog that I am speaking about. I want the next button to warn the user (via InfoDlg) when they are using Local mode. Are you saying that If inside my InfoDlg, I publish a ControlEvent for the OK button to set a property, and then condition my NewDialog event from the SelectServerDlg on the property that the InfoDlg would change? I'm saying maybe -- I haven't done it, so I'm not sure it would work. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] SpawnDialog resulting from Next button?
Yes, the message that I am trying to display shows in the log, after it shows that I had entered my CA. I am not at work right now, but I can retrieve all that the log says at a later time if necessary. On 2/6/07, Bob Arnson [EMAIL PROTECTED] wrote: Levi Wilson wrote: Well, my second idea does not work. Instead of publishing a SpawnDialog event, I have a CA that displays a message box. However, the Message box does not show up. Here are my functions to display a message (see below). I'm certain that GenMessageBox gets called, because I put up a message box (via MessageBox user32 function) that displayed MYMSGTEXT, and the text was correct. Am I missing something? I'm not sure that MsiProcessMessage will show dialogs in the middle of ControlEvent processing. Does anything show up in a verbose log? -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Adding tons of files to an MSI
I'm not sure where else it's talked about, but the above blog entry is by the author of heat I believe. -gg is the generate guid option, so you don't have to generate them yourself. Heat will setup a directory structure, and for each file (component) it will use the name if the directory you use. Therefore, if the directory you are using heat on is called mycooldir, the Id of the directory for all of your components will have an Id=mycooldir. There will be a Directory / hierarchy that will be setup toward the bottom of your wxs file that you can modify to have the right TARGETDIR that you want. There is a good explanation of how the directories are setup in the tutorial linked off of http://wix.sourceforge.net/ if you want to take a look at that. I think the basic templates for it are product and module. I haven't used any of the others. Also, don't forget to add a CC to the wix-users group so everyone can share in the conversation. On 2/6/07, Very Secret [EMAIL PROTECTED] wrote: There is a good explanation of it here http://installing.blogspot.com/2006/04/heatexe-making-setup-easier.html of how to use it. Thanks. The heat command seems to be a good solution. Do you know where I can find some more documentation for heat? E.g. where is -gg and the available templates documented (besides in the above blog)? Also: The newly generated wxs should only be considered as a component and myDir should be placed in e.g. INSTALLDIR\foo\bar\. But how can I set the destination path for the the component in myDir.wxs? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Property Modularization
Alright, I'll try to tread slowly through this one... I have a merge module that has a settings file that is packaged with it. I have a file search setup within my merge module that sets an OLDSETTINGS property. Now, here is where things get fuzzy. IF the OLDSETTINGS exist, the module will notinstall the default settings (packaged with it), but instead copy the old ones over. If the OLDSETTINGS do NOT exist, it will use the default. The problem that I am running into is that I have a UI page that has a static text element that will display to the user information about the default settings (when they're used). Now, since the Properties from the merge module are modularized, the UI can't access that property. So, if I suppress the modularization to get rid of that, then when I Condition / my Component / based upon the OLDSETTINGS property, IT gets modularized (even though I don't want it to). Has anyone ran into this situation before? Any help would be greatly appreciated. Please let me know if more details are needed. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] GUID stability between builds
If by descends a folder structure and... you mean you want something that will generate the WiX code for you, then yes. There is heat.exe that comes with WiX version 3. On 2/5/07, Jesper Hogstrom [EMAIL PROTECTED] wrote: I have set up a wix script for most of what I need. However, the remaining section is a subtree where every single file should be included - and files may be added every now and then. The file structure contains demo files. An obvious solution is to write wix code to specify all files. Another to write code for every directory and a script that inject all files. Thirdly I have considered a script that generates the entire wix code. The main drawback I see with this one is that the GUIDs will fluctuate between install builds. To the best of my understanding there is no wix-macro that descends a folder structure and grabs everything it finds. Is that correct? How important is it to keep GUIDs stable over time for components? Is the better solution to get to it and simply specify all files manually? Reason I hesitate is the overspecification required; project files, build scripts and then wix scripts all need the same set of information. --Jesper - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users