Re: [WiX-users] Checkbox that won't check or un-check
On 7/16/07, Bob Arnson [EMAIL PROTECTED] wrote: Scott Palmer wrote: Microsoft certainly doesn't like to make things easy do they? I assume though that if someone in the WMF group clued in to using MSI that they might also have the foresight to provide a merge module for the redistributables. Kind of like they should have years ago. Merge modules are used less and less these days as it's not possible for the merge module provider to publish patches that update all products on a machine. I've only used merge modules to install shared components like the VC8 runtime. I assume that merge modules would update all products in the case of machine-wide shared components like that. I think the WMF redistributables are similar. And there is always hope that a future version of MSI will allow merge modules to update all products in other cases. The main point being that some sort of coherent, organized, structured install procedure - that is used consistently across MS provided components would be a great help. I was under the impression that MSI was supposed to fill that role, and then I found out after I was in too deep that MS or MS' inconsistent use of MSI (and various other installer rules) falls short of the mark. The signals sent to developers are even mixed in that regard, causing developers to make mistakes that effect other developers. (E.g. the promotion of self registration in the developer tools, and the simultaneous disclaimer that you should never use self-registration.) This has very little to do with WiX and checkboxes however :-)... except in cases where WiX can work around MSI's shortcomings for the developer... Which suggests that WiX should probably fail if a checkbox control is used without setting a CheckBoxValue attribute. A good error message could have easily provided the solution to my original problem. Maybe there was a warning.. but it was lost among the zillions of warnings caused by the VC8 merge modules - foiled by MS again. Thanks for the help everyone. Scott - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Checkbox that won't check or un-check
Scott Palmer wrote: I've only used merge modules to install shared components like the VC8 runtime. I assume that merge modules would update all products in the case of machine-wide shared components like that. Patches target specific products so they can't be used to let Microsoft, for example, ship a patch to the VC runtime that updates all products that use them. The files themselves might get updated but the products won't so you can end up in an inconsistent state after a repair, for example. I was under the impression that MSI was supposed to fill that role, and then I found out after I was in too deep that MS or MS' inconsistent use of MSI (and various other installer rules) falls short of the mark. The rules are fairly simple: Use MSI for everything that isn't an OS component. Which suggests that WiX should probably fail if a checkbox control is used without setting a CheckBoxValue attribute. Please file a feature request so we don't lose it. -- sig://boB http://joyofsetup.com/ - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Checkbox that won't check or un-check
Microsoft certainly doesn't like to make things easy do they? I assume though that if someone in the WMF group clued in to using MSI that they might also have the foresight to provide a merge module for the redistributables. Kind of like they should have years ago. However, assuming that they continue to do things like they have been for years (i.e. badly), what is the way to install another MSI installer from within my own? Scott On 7/13/07, Bob Arnson [EMAIL PROTECTED] wrote: InstallExecuteSequence ... Custom Action=exec_WMF90_redist After=InstallFiles![CDATA[NOT Installed AND WMFVERSION = 0x0009 AND (NOT UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom Custom Action=exec_WMF95_redist After=InstallFiles![CDATA[NOT Installed AND (WMFVERSION = 0x00090005 OR UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom ... /InstallExecuteSequence Note that that works only when the redist isn't using MSI. If it were, you'd get a failure when it tried to run a second MSI simultaneously. -- sig://boB http://joyofsetup.com/ - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Checkbox that won't check or un-check
Microsoft certainly doesn't like to make things easy do they? I assume though that if someone in the WMF group clued in to using MSI that they might also have the foresight to provide a merge module for the redistributables. Kind of like they should have years ago. However, assuming that they continue to do things like they have been for years (i.e. badly), what is the way to install another MSI installer from within my own? You need a bootstrapper application, aka a setup.exe to install your prerequisites. If you search the list archives (http://www.mail-archive.com/wix-users@lists.sourceforge.net/), there is quite a lot on this subject. I personally have started using dotNetInstaller, which as well as installing the .net redistributables, can chain any other package you need. Regards, John - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Checkbox that won't check or un-check
Scott Palmer wrote: Microsoft certainly doesn't like to make things easy do they? I assume though that if someone in the WMF group clued in to using MSI that they might also have the foresight to provide a merge module for the redistributables. Kind of like they should have years ago. Merge modules are used less and less these days as it's not possible for the merge module provider to publish patches that update all products on a machine. However, assuming that they continue to do things like they have been for years (i.e. badly), what is the way to install another MSI installer from within my own? A chainer/bootstrapper is the way to go. -- sig://boB http://joyofsetup.com/ - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
[WiX-users] Checkbox that won't check or un-check
I've got a checkbox in my installer that for some reason cannot be changed by the user and I haven't a clue why. Anyone got some ideas? Here's some code snippets: The initial state is set to checked... (most users will want to upgrade .. some will need to keep old versions because later versons of WMF are not 100% backward compatible with 9.0) Property Id=WMFVERSION Value=0x00090005 / Property Id=UPGRADEWMFTO95 Value=1 / The WMFVERSION property is set by radio buttons to either 0x00090005 or 0x0009 if no version of WMF is found at all. The dialog that does that is not shown (as expected) in the case that is failing for me. I show a dialog based on found versions of Windows Media Format SDK redistributables... !-- Sense existing WMF version -- Property Id=WMF90 DirectorySearch Id=CheckWmfKeyFile90 Path=[SystemFolder] Depth=0 FileSearch Id=wmfKeyDll90 MinVersion=9.0.0.0 MaxVersion= 9.4.. Name=wmvcore.dll/ /DirectorySearch /Property Property Id=WMFHI DirectorySearch Id=CheckWmfKeyFile95OrMore Path=[SystemFolder] Depth=0 FileSearch Id=wmfKeyDll95 MinVersion=10.0.0.3645 MaxVersion= 99... Name=wmvcore.dll/ /DirectorySearch /Property The dialog with the checkbox... only shown if WMF90 is set and WMFHI isn't set. (If anyone has a better way to detect the version of installed Windows Media format SDK redistributables, please let me know.) !-- 9.0 already installed. Ask to upgrade to Windows Media Format 9.5-- Dialog Id=WindowsMediaDlg95 Width=370 Height=270 Title=Windows Media Version NoMinimize=yes Control Id=WMFCheckBox Type=CheckBox X=45 Y=85 Width=256 Height=50 Text=Install Windows Media Format Version 9.5 Property=UPGRADEWMFTO95/ Control Id=WMFNoticeText Type=Text X=30 Y=140 Width=256 Height=50 Text={\WixUI_Font_Emphasized}NOTICE: Windows Media Format 9.5 does NOT support Windows Media MPEG-4 Video V3. System restore is required to revert to 9.0. Windows Media Player 10 or higher is needed to play embedded timecode./ !-- Standard buttons, banners, etc. -- Control Id=Back Type=PushButton X=180 Y=243 Width=56 Height=17 Text=!(loc.WixUIBack) / !-- AddLocal and Remove used with Feature Id to adjust installed features -- Control Id=Next Type=PushButton X=236 Y=243 Width=56 Height=17 Disabled=no Text=!(loc.WixUINext) Publish Event=Remove Value=WinMF90/Publish Publish Event=AddLocal Value=WinMF95UPGRADEWMFTO95/Publish Publish Event=Remove Value=WinMF95![CDATA[NOT (UPGRADEWMFTO95)]]/Publish /Control Control Id=Cancel Type=PushButton X=304 Y=243 Width=56 Height=17 Cancel=yes Text=!(loc.WixUICancel) Publish Event=SpawnDialog Value=CancelDlg1/Publish /Control Control Id=BannerBitmap Type=Bitmap X=0 Y=0 Width=370 Height=44 TabSkip=no Text=!(loc.SetupTypeDlgBannerBitmap) / Control Id=BannerLine Type=Line X=0 Y=44 Width=370 Height=0 / Control Id=BottomLine Type=Line X=0 Y=234 Width=370 Height=0 / Control Id=Title Type=Text X=15 Y=6 Width=200 Height=15 Transparent=yes NoPrefix=yes Text={\WixUI_Font_Title}Windows Media Version / Control Id=Description Type=Text X=25 Y=23 Width=280 Height=15 Transparent=yes NoPrefix=yes Text=Update Windows Media Framework? / /Dialog Then I run the appropriate redist.exe based on the selected feature and other criteria... Feature Id=WinMF90 Title=Windows Media Framework 9.0 Level=1 Absent=allow TypicalDefault=install AllowAdvertise=no Description=Windows Media Framework 9.0. Use this only if you require Windows Media MPEG-4 Video V3 support./ Feature Id=WinMF95 Title=Windows Media Framework 9.5 Level=1 Absent=allow TypicalDefault=install AllowAdvertise=no Description=Windows Media Framework 9.5. Does NOT support Windows Media MPEG-4 Video V3. Cannot be uninstalled, use System Restore to revert to 9.0./ InstallExecuteSequence ... Custom Action=exec_WMF90_redist After=InstallFiles![CDATA[NOT Installed AND WMFVERSION = 0x0009 AND (NOT UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom Custom Action=exec_WMF95_redist After=InstallFiles![CDATA[NOT Installed AND (WMFVERSION = 0x00090005 OR UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom ... /InstallExecuteSequence Perhaps I'm going about this the wrong way entirely.. but I'm trying to avoid custom actions. Any help is appreciated. Thanks, Scott - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Checkbox that won't check or un-check
Scott Palmer wrote: I've got a checkbox in my installer that for some reason cannot be changed by the user and I haven't a clue why. Anyone got some ideas? You need to specify the CheckBoxValue attribute. InstallExecuteSequence ... Custom Action=exec_WMF90_redist After=InstallFiles![CDATA[NOT Installed AND WMFVERSION = 0x0009 AND (NOT UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom Custom Action=exec_WMF95_redist After=InstallFiles![CDATA[NOT Installed AND (WMFVERSION = 0x00090005 OR UPGRADEWMFTO95) AND (NOT WMFHI)]]/Custom ... /InstallExecuteSequence Note that that works only when the redist isn't using MSI. If it were, you'd get a failure when it tried to run a second MSI simultaneously. -- sig://boB http://joyofsetup.com/ - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users