<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx</link><description>A little while ago, I posted an updated version of the .NET Framework setup verification tool that enabled support for the .NET Framework 4.5 and Windows 8.&amp;#160; I used the Windows 8 Release Preview to test that version of the tool, and an application</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx#10361891</link><pubDate>Tue, 23 Oct 2012 01:06:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10361891</guid><dc:creator>Drewfus</dc:creator><description>&lt;p&gt;Thanks Aaron.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10361891" width="1" height="1"&gt;</description></item><item><title>re: Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx#10360819</link><pubDate>Thu, 18 Oct 2012 14:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10360819</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Drewfus - There isn&amp;#39;t a one-size-fits-all answer to the reboot required question. &amp;nbsp;It depends on the program that asks for the reboot. &amp;nbsp;When a setup asks for a reboot, it is nearly always because a file that the setup needs to install/update is in use by another program on the computer, so the file can&amp;#39;t be replaced until after the next reboot. &amp;nbsp;The behavior that you&amp;#39;ll see when skipping a reboot depends on what file was in use. &amp;nbsp;The safest thing to do in this type of scenario would be to reboot if a setup indicates that one is needed just in case.&lt;/p&gt;
&lt;p&gt;In the case of the .NET Framework, it can be chained in with other setup programs, and if it requests a reboot, it is safe to defer that reboot until the end of the overall installation process. &amp;nbsp;However, it is not safe to defer the reboot indefinitely and proceed to try to use the application after the overall setup process completes.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10360819" width="1" height="1"&gt;</description></item><item><title>re: Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx#10360707</link><pubDate>Thu, 18 Oct 2012 07:43:20 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10360707</guid><dc:creator>Drewfus</dc:creator><description>&lt;p&gt;Thanks Aaron.&lt;/p&gt;
&lt;p&gt;&amp;quot;I don&amp;#39;t know of any inbox .NET Framework verifiers like the one you describe for Microsoft Office.&amp;quot;&lt;/p&gt;
&lt;p&gt;Ok. I meant more that Office apps should have these &amp;quot;audit mode&amp;quot; switches, natively.&lt;/p&gt;
&lt;p&gt;&amp;quot;The registry keys that are checked by my .NET Framework verification tool are the same keys that are publicly documented in the .NET Framework deployment guides. &amp;nbsp;These keys are the recommended way for application developers to detect whether or not they should install the .NET Framework as a part of their setup process. &amp;nbsp;Because of their recommended usage, I think those registry keys are important enough to need to be verified by this tool.&amp;quot;&lt;/p&gt;
&lt;p&gt;Understood and point taken. However, as you describe, your verification tool also &amp;quot;run[s] a sample application that verifies that the .NET Framework runtime can be started correctly.&amp;quot; That&amp;#39;s great, so i suppose i&amp;#39;m just wondering out loud; why can&amp;#39;t the dotNetFramework *include* a small, GUI-less app that tests dotNet functionality, rather than just having to have faith in the correctnesss of registry keys? But you have already answered that. :-)&lt;/p&gt;
&lt;p&gt;Lets see if i can&amp;#39;t ask something less hypothetical...&lt;/p&gt;
&lt;p&gt;Suppose a user wants to install an app that has a dependency on a dotNetFramework version not currently installed. The user installs the required dotNet version successfully, but the installer indicates a reboot is required. Ok, so can the user go ahead and install the app anyway, and reboot after *that* installation, or should they reboot immediately after the dotNet install?&lt;/p&gt;
&lt;p&gt;I know its a simple question, but i&amp;#39;m not sure if there is a general answer. Another example; in another post we were recently talking about Media Center, and i mentioned about building an MCE2005 master image, in case i came across a machine still running this. So when i did this, i kept wondering things like; Okay, i&amp;#39;ve just installed Update Rollup 2, and Windows wants to reboot, but can i install October 2006 Update Rollup first ( which is dependent on Update Rollup 2), or should i reboot and then reboot again? This is an old OS, so i&amp;#39;m just using this as an example.&lt;/p&gt;
&lt;p&gt;So does &amp;#39;reboot required&amp;#39; mean:&lt;/p&gt;
&lt;p&gt;1. Reboot before you do anything else.&lt;/p&gt;
&lt;p&gt;Or just&lt;/p&gt;
&lt;p&gt;2. A reboot is required to complete the installation, but postpone this if necessary, including to install other software that is dependent on the software that requires the reboot.&lt;/p&gt;
&lt;p&gt;?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10360707" width="1" height="1"&gt;</description></item><item><title>re: Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx#10354737</link><pubDate>Mon, 01 Oct 2012 13:49:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10354737</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Drewfus - I don&amp;#39;t know of any inbox .NET Framework verifiers like the one you describe for Microsoft Office.&lt;/p&gt;
&lt;p&gt;The registry keys that are checked by my .NET Framework verification tool are the same keys that are publicly documented in the .NET Framework deployment guides. &amp;nbsp;These keys are the recommended way for application developers to detect whether or not they should install the .NET Framework as a part of their setup process. &amp;nbsp;Because of their recommended usage, I think those registry keys are important enough to need to be verified by this tool. &amp;nbsp;I agree with you that using registry keys to detect the install state of the .NET Framework is not foolproof, but it is the way that is publically documented.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10354737" width="1" height="1"&gt;</description></item><item><title>re: Updated .NET Framework setup verification tool that addresses application compatibility issues</title><link>http://blogs.msdn.com/b/astebner/archive/2012/09/13/10349253.aspx#10354512</link><pubDate>Sun, 30 Sep 2012 07:04:36 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10354512</guid><dc:creator>Drewfus</dc:creator><description>&lt;p&gt;&amp;lt;i&amp;gt;The only things that will cause the verification tool to report an error are the following:&lt;/p&gt;
&lt;p&gt;•Missing registry keys that are used by applications to detect whether or not the .NET Framework is installed (as documented in the deployment guide for each version of the .NET Framework).&lt;/p&gt;
&lt;p&gt;•Failure to run a sample application that verifies that the .NET Framework runtime can be started correctly.&amp;lt;/i&amp;gt;&lt;/p&gt;
&lt;p&gt;Aaron, my layman&amp;#39;s interpretation of this is that requiring apps to check registry keys to detect .Net Framework installations is too brittle a method. Registry keys and values might be okay for not-quite-critical stuff like ARP, but functionality checks should be more robust, especially if the functionality is part of the OS setup. Why can&amp;#39;t app installers include or utilize an inbox dNF verifier?&lt;/p&gt;
&lt;p&gt;More generally - it would be handy for image builders (like me) to be able to run apps in a verify-only mode, like this;&lt;/p&gt;
&lt;p&gt;&amp;gt; winword.exe /verify /close&lt;/p&gt;
&lt;p&gt;This would open the app, bypassing any runonce or open file dialog logic, and then when all critical dlls have loaded, close the app and return an appropriate errorlevel. If the return code is zero, i can be confident the app will work once the image is deployed, plus the secondary benefit of building Prefetch data. Non-zero return codes could be detected in aggregating log;&lt;/p&gt;
&lt;p&gt;&amp;gt; findstr :[1-9] %temp%\appAudit.log&lt;/p&gt;
&lt;p&gt;Put another way, if it&amp;#39;s appropriate for the OS to have an audit mode, why not apps?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10354512" width="1" height="1"&gt;</description></item></channel></rss>