Bugs item #1590800, was opened at 2006-11-05 14:57 Message generated for change (Comment added) made by blackend You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=642714&aid=1590800&group_id=105970
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: extensions Group: v2.0 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Shay Erlichmen (blackend) Assigned to: Fredrik Grohn (fregro) Summary: pubca - InitializesServerApplication not working Initial Comment: Hi, The InitializesServerApplication is not working on WinXP and Win2000. The auther of the extension might not know that this property is supported under those platforms. check out KB http://support.microsoft.com/kb/303890 for infomration for @indows 2000. Under WindowsXP there used to be a problem with it (KB902400 breaks it) but hotfix KB922668 fix it. The extension should support this propery on those platforms also. Regrads, -Shay Erlichmen. ---------------------------------------------------------------------- >Comment By: Shay Erlichmen (blackend) Date: 2006-12-12 11:21 Message: Logged In: YES user_id=38524 Originator: YES I read and I understood why you choose that, but it doesn't make sense for InitializesServerApplication. If the user explicitly stated that he he needs to be notified when the server startups/shutdown you most oblige. In case that the OS doesn't support that feature, you probably can run the component on that OS. Since InitializesServerApplication is supported on ALL OSes (now) you can change the code to always try to set it if ask for. ---------------------------------------------------------------------- Comment By: Fredrik Grohn (fregro) Date: 2006-12-08 07:14 Message: Logged In: YES user_id=1138467 Originator: NO (Please ignore the duplicate post -- SourceForge has the buggiest web page i know of...) Man, did you read my post? I made a conscious decision not to implement that behavior for properties because it effectively makes impossible to install on a down-level system would the application be tolerant to the absence of this functionality. But anyway, I’ll fix this somehow. ---------------------------------------------------------------------- Comment By: Fredrik Grohn (fregro) Date: 2006-12-08 07:05 Message: Logged In: YES user_id=1138467 Originator: NO The reason why the CA simply ignores the fields on a down level windows versions that are supported by a later version is that otherwise it would be plain impossible to install the application on a down-level windows version without making a separate MSI. The reasoning is that the application itself could be authored to only use newer features if they are present on the windows version it is being installed on. In the case with the InitializesServerApplication attribute, it would be possible to author an application so that it handles initialization events on a 2k3 machine but does not rely on it for critical functionality and thus is able to function properly on a 2k system that does not support this functionality. In this case, ignoring the attribute on a 2k system still allows the same MSI to be installed on both the 2k3 and the 2k system. Okay, I’ll do some research on what systems and service pack levels this feature is actually supported. I wasn’t aware that it was available on 2k and xp since the documentation states that it is only supported on 2k3 and later. In case anybody wants to try it out and let me know the outcome is likely to speed up the fix for this issue. :) ---------------------------------------------------------------------- Comment By: Shay Erlichmen (blackend) Date: 2006-12-07 16:24 Message: Logged In: YES user_id=38524 Originator: YES I think that if a user choose to activate InitializesServerApplication then without any checks you should try to set it. If the rollups are not installed on WinXP or Win2K then let the setup fail. (using an appropriate log) It is up to the setup (using LaunchCondition) to validate that the rollups are installed on the machine. Ignoring the requst for InitializesServerApplication like we do today might break the application. To sum up: If InitializesServerApplication is requested then try to set it in the catalog,if it failles (the rollups are not installed for example) fail the setup. Add more documentation that explains the you need the rollups under W2K. -Shay Erlichmen. ---------------------------------------------------------------------- Comment By: Fredrik Grohn (fregro) Date: 2006-12-07 07:20 Message: Logged In: YES user_id=1138467 Originator: NO The reason why the CA simply ignores the fields on a down level windows versions that are supported by a later version is that otherwise it would be plain impossible to install the application on a down-level windows version without making a separate MSI. The reasoning is that the application itself could be authored to only use newer features if they are present on the windows version it is being installed on. In the case with the InitializesServerApplication attribute, it would be possible to author an application so that it handles initialization events on a 2k3 machine but does not rely on it for critical functionality and thus is able to function properly on a 2k system that does not support this functionality. In this case, ignoring the attribute on a 2k system still allows the same MSI to be installed on both the 2k3 and the 2k system. Okay, I’ll do some research on what systems and service pack levels this feature is actually supported. I wasn’t aware that it was available on 2k and xp since the documentation states that it is only supported on 2k3 and later. In case anybody wants to try it out and let me know the outcome is likely to speed up the fix for this issue. :) ---------------------------------------------------------------------- Comment By: Mike Dimmick (mikedimmick) Date: 2006-11-06 18:57 Message: Logged In: YES user_id=1040952 The documentation for InitializesServerApplication at http://msdn.microsoft.com/library/en-us/cossdk/html/f502ba60-b2b1-4556-8f91- 22a474e60e0d.asp?frame=true#_cos_components_initializesserverapplication states that it's supported as of Windows Server 2003, but the documentation for IProcessInitializer at http://msdn.microsoft.com/library/default.asp?url=/library/en- us/cossdk/html/7c7edeb7-5bc1-4ede-8fe4-78fc7c6bdd30.asp states Windows 2000 or later. Clearly they can't both be right. The KB article linked shows 'kbwin2000sp3fix' as a keyword, so I assume that the rollup that enables the feature was included in Windows 2000 SP3. Since the rollup was released in August 2001 (http://support.microsoft.com/kb/302845/) I would expect that the feature was present in Windows XP RTM although this should be tested. To support this on Windows 2000 and later, change '502' to '500' for the InitializesServerApplication property in pdlComponentProperties in src\ca\pubca\pcasched\cpiasmsched.cpp (line 125 in 2.0.4701.0). I'm not sure what will happen if this is run on a platform which doesn't support the feature, however - presumably ICatalogObject::put_Value will return an error? If this does happen, the installation will probably roll back. This may well be the right thing to do, though. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=642714&aid=1590800&group_id=105970 ------------------------------------------------------------------------- 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.php&p=sourceforge&CID=DEVDEV _______________________________________________ WiX-devs mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wix-devs
