<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.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>Daniel Martín's blog : Consultas</title><link>http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx</link><description>Tags: Consultas</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>¿Cuándo se crea una partición de sistema durante la instalación de Windows 7?</title><link>http://msmvps.com/blogs/dmartin/archive/2009/12/13/191-cuando-se-crea-una-partici-243-n-de-sistema-durante-la-instalaci-243-n-de-windows-7.aspx</link><pubDate>Mon, 14 Dec 2009 01:50:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1745426</guid><dc:creator>dmartin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1745426</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1745426</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/12/13/191-cuando-se-crea-una-partici-243-n-de-sistema-durante-la-instalaci-243-n-de-windows-7.aspx#comments</comments><description>&lt;p&gt;Antes de la primera &lt;em&gt;beta&lt;/em&gt; de Windows 7 &lt;a target="_blank" href="http://msmvps.com/blogs/dmartin/archive/2008/11/16/sobre-la-nueva-partici-243-n-de-sistema-de-windows-7.aspx"&gt;publiqu&amp;eacute;&lt;/a&gt; un art&amp;iacute;culo referido a la partici&amp;oacute;n de sistema que se&amp;nbsp;crea durante la instalaci&amp;oacute;n de&amp;nbsp;Windows 7, de 200 MB (reducido a 100 MB en la versi&amp;oacute;n final, como ya anticip&amp;eacute; en el art&amp;iacute;culo), con etiqueta &amp;quot;Reservado para el sistema&amp;quot; y sin letra de unidad asignada. Como a&amp;uacute;n existen muchas cuestiones sobre qu&amp;eacute; condiciones tiene que cumplir el disco para que se cree autom&amp;aacute;ticamente dicha partici&amp;oacute;n, este art&amp;iacute;culo intentar&amp;aacute; detallar a&amp;uacute;n m&amp;aacute;s este punto. Como ya sabe, el motivo principal&amp;nbsp;por el cual se le invita al usuario a crear una partici&amp;oacute;n de sistema separada de la partici&amp;oacute;n de arranque es para que la utilidad de Windows 7&amp;nbsp;Bitlocker funcione correctamente y tambi&amp;eacute;n&amp;nbsp;para facilitar los escenarios en los que hay dos o m&amp;aacute;s sistemas operativos instalados en una misma m&amp;aacute;quina.&lt;/p&gt;
&lt;p&gt;Durante la instalaci&amp;oacute;n de Windows 7, se comprueba si existe una unidad de sistema creada con anterioridad (por ejemplo, porque se est&amp;eacute; realizando una actualizaci&amp;oacute;n, una instalaci&amp;oacute;n limpia iniciando el programa de instalaci&amp;oacute;n desde otro Windows, o bien se hayan creado las particiones con otra utilidad). Si es el caso, se comprueba si esta cumple con el requisito de tener al menos 100 MB de espacio libre. Si fuera adem&amp;aacute;s el volumen donde se va a instalar el sistema operativo, este debe tener espacio tambi&amp;eacute;n para los archivos de instalaci&amp;oacute;n del&amp;nbsp;sistema. Si se cumplen estas condiciones, la unidad queda asignada como volumen de sistema, marcada como&amp;nbsp;activa, y el programa de instalaci&amp;oacute;n no hace ninguna modificaci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Qu&amp;eacute; ocurre si no hay ning&amp;uacute;n volumen de sistema en el equipo?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En el&amp;nbsp;caso de que no haya ning&amp;uacute;n volumen de sistema en el equipo, normalmente porque se est&amp;aacute; instalando Windows 7 en un disco vac&amp;iacute;o, el programa de instalaci&amp;oacute;n intenta encontrar la mejor unidad de sistema posible. Para ello se siguen estos pasos, que imponen un orden de preferencia:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Se intenta encontrar una regi&amp;oacute;n dentro del espacio no asignado del disco donde se va a instalar el sistema operativo, que cumpla con los requisitos de espacio antes mencionados.&lt;/li&gt;
&lt;li&gt;Si no se ha encontradado nada, se busca en el espacio no asignado del resto de discos.&lt;/li&gt;
&lt;li&gt;Si a&amp;uacute;n as&amp;iacute; no se encontrara un candidato a posible unidad de sistema, se examinar&amp;iacute;a el espacio asignado en todos los discos.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Queda una &amp;uacute;ltima restricci&amp;oacute;n: Si el sistema encontrara una regi&amp;oacute;n sin asignar que cumpliera con los requisitos de espacio de la unidad de sistema, esta solo es elegida si en el disco hay menos de 3 particiones.&lt;/p&gt;
&lt;p&gt;Una vez que el programa de instalaci&amp;oacute;n ha encontrado una regi&amp;oacute;n que puede contener la unidad de sistema, consulta al usuario si desea crearla (si procede)&amp;nbsp;y, de contestar afirmativamente, la crea y le da formato NTFS.&lt;/p&gt;
&lt;p&gt;Preguntas m&amp;aacute;s frecuentes:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tengo una partici&amp;oacute;n sin letra de 200 MB&amp;nbsp;o de un tama&amp;ntilde;o superior, no de 100 MB&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Es importante comentar que la versi&amp;oacute;n final de Windows 7, de tener que crear una partici&amp;oacute;n de sistema, siempre crear&amp;aacute; una de 100 MB. Si observa una partici&amp;oacute;n de 200 MB o de otro tama&amp;ntilde;o superior, sin letra de unidad, probablemente se trate de una partici&amp;oacute;n&amp;nbsp;activa que ya estaba con anterioridad en ese sistema (quiz&amp;aacute; por la instalaci&amp;oacute;n de una versi&amp;oacute;n &lt;em&gt;beta&lt;/em&gt; de Windows 7)&amp;nbsp;y que el programa de instalaci&amp;oacute;n de Windows 7 ha aprovechado.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Se puede evitar la creaci&amp;oacute;n de esa partici&amp;oacute;n de sistema?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Es posible, pero yo personalmente no lo recomiendo. Quiz&amp;aacute; la forma m&amp;aacute;s sencilla sea pulsar May&amp;uacute;sculas+F10 en la pantalla de creaci&amp;oacute;n de particiones del programa de instalaci&amp;oacute;n de Windows 7 para abrir una consola de comandos. En dicha consola, teclear estos comandos para crear una partici&amp;oacute;n activa que ocupe la totalidad del disco. Esta partici&amp;oacute;n activa la usar&amp;aacute; el programa de instalaci&amp;oacute;n como partici&amp;oacute;n de sistema:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;Diskpart&lt;br /&gt;Select disk 0&lt;br /&gt;Create part prim&lt;br /&gt;Active&lt;br /&gt;Exit&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Es probable que al cerrar la consola tenga que pulsar sobre el bot&amp;oacute;n &lt;em&gt;Actualizar&lt;/em&gt; para ver el nuevo esquema de particiones reci&amp;eacute;n creado.&lt;/p&gt;
&lt;p&gt;Para concluir, este diagrama de flujo resume los pasos que se siguen para determinar si se debe crear una unidad de sistema durante la instalaci&amp;oacute;n de Windows 7:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/4201.ParticionSistemaFlujo.png" border="0" style="max-height:738px;max-width:695px;" alt="" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1745426" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category></item><item><title>¿Cómo funciona Autorun/AutoPlay en Windows 7?</title><link>http://msmvps.com/blogs/dmartin/archive/2009/11/19/191-c-243-mo-funciona-autorun-autoplay-en-windows-7.aspx</link><pubDate>Thu, 19 Nov 2009 22:17:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1740381</guid><dc:creator>dmartin</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1740381</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1740381</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/11/19/191-c-243-mo-funciona-autorun-autoplay-en-windows-7.aspx#comments</comments><description>&lt;p&gt;Una de las novedades de Windows 7 con respecto a la seguridad general del sistema es que en este sistema operativo est&amp;aacute; desactivada la funcionalidad Autorun para dispositivos USB. La funcionalidad Autorun&amp;nbsp;recientemente ha venido siendo usada por los autores de &lt;em&gt;malware&lt;/em&gt; para infectar dispositivos USB y a su vez intentar enga&amp;ntilde;ar al usuario para que ejecute c&amp;oacute;digo malicioso una vez inserte el dispositivo en su m&amp;aacute;quina. Por este motivo, Microsoft hizo un anuncio durante la beta de Windows 7 diciendo que la funcionalidad Autorun estar&amp;iacute;a desactivada para dispositivos USB (&lt;a href="http://blogs.msdn.com/e7/archive/2009/04/27/improvements-to-autoplay.aspx"&gt;http://blogs.msdn.com/e7/archive/2009/04/27/improvements-to-autoplay.aspx&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;En un foro una persona preguntaba qu&amp;eacute; implicaciones tendr&amp;iacute;a esto sobre las posibles personalizaciones que se aplican aprovechando la funcionalidad Autorun de los dispositivos &amp;oacute;pticos y extra&amp;iacute;bles, tales como cambiar el icono de la unidad y cambiar su etiqueta. Aprovechando la respuesta a esta cuesti&amp;oacute;n voy a describir tambi&amp;eacute;n en qu&amp;eacute; consisten los&amp;nbsp;mecanismos&amp;nbsp;Autorun y Autoplay en Windows 7.&lt;/p&gt;
&lt;p&gt;Autorun y Autoplay son dos conceptos parecidos pero no iguales, que hay que distinguir. En esta p&amp;aacute;gina de la documentaci&amp;oacute;n de Windows 7 puede ver cu&amp;aacute;les son las diferencias entre Autorun y Autoplay: &lt;a href="http://windows.microsoft.com/en-us/windows-vista/Whats-the-difference-between-AutoPlay-and-autorun"&gt;http://windows.microsoft.com/en-us/windows-vista/Whats-the-difference-between-AutoPlay-and-autorun&lt;/a&gt;. Cuando el usuario inserta un DVD en la unidad, un dispositivo USB, etc., una de las primeras cosas que hace el sistema es procesar el posible fichero Autorun.inf de la ra&amp;iacute;z del dispositivo. El fichero Autorun.inf tiene una serie de opciones de configuraci&amp;oacute;n que permiten cambiar el icono de la unidad, su etiqueta, el programa que ejecutar&amp;aacute; autom&amp;aacute;ticamente, etc. Esta lista recoge los posibles par&amp;aacute;metros&amp;nbsp;y los cambios que ha habido en Windows 7 con respecto a sistemas anteriores:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Open&lt;/strong&gt;: Programa que se abrir&amp;aacute; autom&amp;aacute;ticamente. En Windows 7 esto solo est&amp;aacute; soportado en unidades &amp;oacute;pticas (CD/DVD).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;ShellExecute&lt;/strong&gt;: Similar al caso de la opci&amp;oacute;n &lt;em&gt;Open&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Icon&lt;/strong&gt;: Icono asignado a la unidad. Soportado en Windows 7, y sobre&amp;nbsp;cualquier tipo de unidad compatible con Autorun.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Action&lt;/strong&gt;: En Windows 7 solo se tiene en cuenta para unidades &amp;oacute;pticas (CD/DVD).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Label&lt;/strong&gt;: Establece una etiqueta al volumen. Soportado en Windows 7, y sobre cualquier tipo de unidad compatible con Autorun.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As&amp;iacute; pues, Windows 7 desactiva Autorun para toda unidad que no sea de CD/DVD, excepto si se trata de los inofensivos par&amp;aacute;metros &lt;em&gt;Icon&lt;/em&gt; y &lt;em&gt;Label&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Para optimizar el rendimiento, conforme el sistema va analizando el fichero Autorun.inf, va almacenando su informaci&amp;oacute;n en la rama de Registro HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\MountPoints2\{CLSID}\_Autorun (donde CLSID identifica a un dispositivo particular). En Windows 7 y en el caso de dispositivos USB, tampoco se almacena esta informaci&amp;oacute;n en el Registro, excepto si se trata de los par&amp;aacute;metros &lt;em&gt;Icon&lt;/em&gt; y &lt;em&gt;Label&lt;/em&gt;, como ya se ha comentado.&lt;/p&gt;
&lt;p&gt;Una vez analizado el fichero Autorun.inf, el sistema establece en el men&amp;uacute; contextual de la unidad&amp;nbsp;el verbo (acci&amp;oacute;n) por defecto, que se mostrar&amp;aacute; al usuario en letra negrita y ser&amp;aacute; lo que ocurra por defecto al hacer doble clic sobre la unidad. N&amp;oacute;tese que esto no ocurre en Windows 7 en el caso de unidades extra&amp;iacute;bles.&lt;/p&gt;
&lt;p&gt;A continuaci&amp;oacute;n se comprueba si Autorun est&amp;aacute; habilitado o no para esa unidad en particular. Para ello se examina en la clave de Registro HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer si existiera alguna de estas directivas establecidas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;NoDriveAutorun&lt;/li&gt;
&lt;li&gt;NoDrives&lt;/li&gt;
&lt;li&gt;NoDriveTypeAutorun&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La primera directiva desactiva Autorun para una unidad en particular; la segunda oculta la unidad en Explorador de Windows, por lo que autom&amp;aacute;ticamente se desactiva la reproducci&amp;oacute;n autom&amp;aacute;tica en la misma, y la tercera desactiva Autorun para un tipo particular de dispositivos (&amp;oacute;pticos, USB, etc.).&lt;/p&gt;
&lt;p&gt;Si al introducir un CD/DVD/USB en su sistema no se muestra un cuadro de reproducci&amp;oacute;n autom&amp;aacute;tica, deber&amp;iacute;a examinar en primer lugar estos tres valores de Registro, tanto en la rama HKCU, como en la HKLM. Programas como VMware Workstation aplican alguna de estas directivas para evitar que la reproducci&amp;oacute;n autom&amp;aacute;tica interfiera con el sistema que est&amp;aacute; siendo virtualizado.&lt;/p&gt;
&lt;p&gt;Otro de los factores que se comprueban y que influyen en que la reproducci&amp;oacute;n autom&amp;aacute;tica est&amp;eacute; desactivada&amp;nbsp;es que haya una aplicaci&amp;oacute;n DirectX funcionando a pantalla completa (por ejemplo un juego) o un salvapantallas. Asimismo, hay un valor de Registro que desactiva AutoPlay y que es configurable desde la interfaz gr&amp;aacute;fica, concretamente desde &lt;em&gt;Inicio&lt;/em&gt;, &lt;em&gt;Programas predeterminados&lt;/em&gt;, &lt;em&gt;Cambiar configuraci&amp;oacute;n de reproducci&amp;oacute;n autom&amp;aacute;tica&lt;/em&gt;, &lt;em&gt;Usar la reproducci&amp;oacute;n autom&amp;aacute;tica para todos los medios y dispositivos&lt;/em&gt;. Se trata del valor &lt;em&gt;DisableAutoplay&lt;/em&gt; de la clave HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers. Este es otro de los valores de Registro que deber&amp;iacute;a consultar si AutoPlay no funcionara correctamente.&lt;/p&gt;
&lt;p&gt;A continuaci&amp;oacute;n el sistema queda a la espera de que se mantenga pulsada la tecla &lt;em&gt;Shift&lt;/em&gt; (May&amp;uacute;sculas). El significado de esta tecla en versiones anteriores de Windows era el de desactivar la reproducci&amp;oacute;n autom&amp;aacute;tica temporalmente. En Windows Vista y Windows 7 esta tecla cambia radicalmente de significado. Sirve para que temporalmente se aplique la configuraci&amp;oacute;n por defecto para la reproducci&amp;oacute;n autom&amp;aacute;tica, es decir,&amp;nbsp;el usuario ver&amp;aacute; un cuadro de di&amp;aacute;logo con las posibles acciones, incluso si hay alguna aplicaci&amp;oacute;n que est&amp;eacute; desactivando la reproducci&amp;oacute;n autom&amp;aacute;tica (m&amp;aacute;s adelante se explicar&amp;aacute; c&amp;oacute;mo puede ocurrir eso).&lt;/p&gt;
&lt;p&gt;Si el sistema detecta que la tecla &lt;em&gt;Shift&lt;/em&gt; no est&amp;aacute; pulsada, comprueba si lo que ha ocurrido es que un programa de instalaci&amp;oacute;n ha pedido un CD/DVD al usuario y este lo ha introducido. En este tipo de&amp;nbsp;casos conviene no mostrar el cuadro de reproducci&amp;oacute;n autom&amp;aacute;tica al usuario.&amp;nbsp;El sistema comprueba esto viendo desde d&amp;oacute;nde se est&amp;aacute; ejecutando la aplicaci&amp;oacute;n que hay en primer plano. Si es desde el CD/DVD o desde el directorio temporal del usuario, supone que se trata de una instalaci&amp;oacute;n en curso y esto autom&amp;aacute;ticamente desactiva la reproducci&amp;oacute;n autom&amp;aacute;tica.&lt;/p&gt;
&lt;p&gt;Por &amp;uacute;ltimo, existe la posibilidad de que la aplicaci&amp;oacute;n que est&amp;eacute; ejecut&amp;aacute;ndose en primer plano&amp;nbsp;haya desactivado la reproducci&amp;oacute;n autom&amp;aacute;tica. Esto es &amp;uacute;til por ejemplo en el caso de aplicaciones multimedia, de instalaci&amp;oacute;n,&amp;nbsp;de grabaci&amp;oacute;n de CD,&amp;nbsp;etc. Para conseguir esto la aplicaci&amp;oacute;n en cuesti&amp;oacute;n implementa la interfaz &lt;a href="http://msdn.microsoft.com/en-us/library/bb761373(VS.85).aspx"&gt;IQueryCancelAutoPlay&lt;/a&gt;, tal y como se comenta en MSDN, y se a&amp;ntilde;ade a la clave de Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay. Tambi&amp;eacute;n puede administrar el mensaje &lt;em&gt;QueryCancelAutoPlay&lt;/em&gt; que le env&amp;iacute;a el sistema a su ventana y decidir si quiere desactivar la reproducci&amp;oacute;n autom&amp;aacute;tica o no. A modo de ejemplo pr&amp;aacute;ctico, la utilidad de grabaci&amp;oacute;n de im&amp;aacute;genes ISO de Windows 7 utiliza este m&amp;eacute;todo para desactivar la reproducci&amp;oacute;n autom&amp;aacute;tica de la unidad seleccionada, temporalmente.&lt;/p&gt;
&lt;p&gt;El sistema de recolecci&amp;oacute;n de &lt;em&gt;feedback&lt;/em&gt; SQM (Service Quality Metrics) de Microsoft recopila informaci&amp;oacute;n detallada acerca de las causas por las cuales est&amp;aacute; desactivada la reproducci&amp;oacute;n autom&amp;aacute;tica en Windows, etc., con el fin de enviarlas a Microsoft para que se estudie c&amp;oacute;mo trabajan&amp;nbsp;millones de usuarios en todo el mundo y as&amp;iacute; poder mejorar el producto. Es importante comentar que la participaci&amp;oacute;n en este programa&amp;nbsp;de &lt;em&gt;feedback&lt;/em&gt;, que oficialmente recibe el nombre de &lt;em&gt;Windows Customer Experience Improvement Program&lt;/em&gt;&amp;nbsp;es completamente voluntaria y se puede activar desde &lt;em&gt;Inicio&lt;/em&gt;, escribiendo &lt;em&gt;CEIP&lt;/em&gt; en la caja de b&amp;uacute;squeda y seleccionando el &amp;iacute;tem de Panel de control ofrecido.&lt;/p&gt;
&lt;p&gt;En cuanto a AutoPlay, el sistema inspecciona el contenido del medio reci&amp;eacute;n insertado con el fin de presentar al usuario tareas espec&amp;iacute;ficas con el tipo de contenido que est&amp;aacute; tratando. En un primer momento, el sistema analiza el fichero Autorun.inf por si hubiera alguna gu&amp;iacute;a acerca del contenido de ese dispositivo. El fichero Autorun.inf admite&amp;nbsp;una&amp;nbsp;secci&amp;oacute;n como&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;[Content] &lt;/p&gt;
&lt;p&gt;MusicFiles = True &lt;/p&gt;
&lt;p&gt;PictureFiles = False &lt;/p&gt;
&lt;p&gt;VideoFiles = False&lt;/p&gt;
&lt;/code&gt;que le dir&amp;iacute;a al sistema que el medio contiene &amp;uacute;nicamente archivos de m&amp;uacute;sica, por lo que se mostrar&amp;iacute;an tareas orientadas&amp;nbsp;a tratar con m&amp;uacute;sica. Es importante resaltar que la secci&amp;oacute;n [Content]&amp;nbsp;es independiente de lo que haya realmente en el medio: Si el fichero Autorun.inf dice que no hay ficheros de v&amp;iacute;deo, la reproducci&amp;oacute;n autom&amp;aacute;tica no mostrar&amp;aacute; tareas relacionadas con el tratamiento de v&amp;iacute;deos, pese a que los haya en el medio. Otras dos secciones del fichero Autorun.inf que est&amp;aacute;n relacionadas con Autoplay son [ExclusiveContentPaths], que contiene las rutas que debe analizar el sistema para extraer el tipo de contenido que hay en el medio, e [IgnoreContentPaths], que contiene rutas que no ser&amp;aacute;n analizadas, pese a que sean subcarpetas de una ruta establecida en la secci&amp;oacute;n [ExclusiveContentPaths]. Estas &amp;uacute;ltimas secciones son &amp;uacute;tiles y recomendables para el caso de medios con una cantidad bastante considerable de contenido, pues el sistema se demorar&amp;aacute; recorriendo directorios que no contienen datos relevantes desde el punto de vista de la multimedia. Puede obtener m&amp;aacute;s informaci&amp;oacute;n sobre estas secciones del fichero Autorun.inf en el siguiente art&amp;iacute;culo de MSDN: &lt;a href="http://msdn.microsoft.com/en-us/library/cc144200(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc144200(VS.85).aspx&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Este art&amp;iacute;culo pretende ser un repaso general de las funcionalidades Autorun/AutoPlay de Windows 7, clarificando las dudas que hay sobre el fichero Autorun.inf en unidades USB en Windows 7, y haciendo hincapi&amp;eacute; en aquellos aspectos que pueden desactivar la reproducci&amp;oacute;n autom&amp;aacute;tica, por si en alg&amp;uacute;n momento tuviera que abordar un sistema con este problema.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1740381" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category></item><item><title>¿En qué consiste una versión localizada de Windows Vista/7? [Parte I]</title><link>http://msmvps.com/blogs/dmartin/archive/2009/10/24/191-en-qu-233-consiste-una-versi-243-n-localizada-de-windows-vista-7.aspx</link><pubDate>Sat, 24 Oct 2009 20:24:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1734902</guid><dc:creator>dmartin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1734902</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1734902</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/10/24/191-en-qu-233-consiste-una-versi-243-n-localizada-de-windows-vista-7.aspx#comments</comments><description>&lt;p&gt;Una pr&amp;aacute;ctica que era com&amp;uacute;n en el desarrollo de&amp;nbsp;software de hace unos a&amp;ntilde;os&amp;nbsp;consist&amp;iacute;a en&amp;nbsp;mezclar el&amp;nbsp;c&amp;oacute;digo fuente de la aplicaci&amp;oacute;n&amp;nbsp;junto con&amp;nbsp;cadenas de texto y otros recursos (iconos, im&amp;aacute;genes, etc.). El siguiente diagrama&amp;nbsp;lo explica gr&amp;aacute;ficamente:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0456.TextoEnCodigo.png"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0456.TextoEnCodigo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Conforme el mercado comenz&amp;oacute; a globalizarse fue surgiendo la necesidad de traducir aplicaciones a m&amp;uacute;ltiples idiomas, y por ende este m&amp;eacute;todo acab&amp;oacute; siendo completamente descartado por los siguientes motivos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Para traducir una aplicaci&amp;oacute;n primero hay que crear una o m&amp;aacute;s copias de su&amp;nbsp;c&amp;oacute;digo fuente, con el consecuente coste a&amp;ntilde;adido que supone el mantenerlas.&lt;/li&gt;
&lt;li&gt;Los traductores, que por lo general no tienen conocimientos de programaci&amp;oacute;n, tienen que manipular el c&amp;oacute;digo fuente para traducir las cadenas de texto. Esto puede introducir errores en el funcionamiento de la aplicaci&amp;oacute;n.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Es en esta &amp;eacute;poca cuando el uso de una versi&amp;oacute;n en ingl&amp;eacute;s (o en el idioma nativo de la empresa que desarrollara ese programa) s&amp;iacute; pod&amp;iacute;a ofrecer ciertas ventajas con respecto al resto de idiomas. La posibilidad de introducir errores en el c&amp;oacute;digo mientras se traduc&amp;iacute;a&amp;nbsp;un programa&amp;nbsp;no era algo descabellado, todo ello debido a que la separaci&amp;oacute;n entre c&amp;oacute;digo fuente y cadenas de texto dependientes del idioma era insuficiente (en este caso particular, inexistente).&lt;/p&gt;
&lt;p&gt;Las versiones de Windows anteriores a Vista introdujeron una nueva arquitectura de localizaci&amp;oacute;n de binarios, con el objetivo de separar el c&amp;oacute;digo fuente (las instrucciones que acaba ejecutando el computador) de las cadenas de texto (mensajes informativos, errores, iconos, etc.). &lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0871.CodigoSeparado.png"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0871.CodigoSeparado.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Si bien esta arquitectura es v&amp;aacute;lida y sigue siendo usada por much&amp;iacute;simas aplicaciones hoy en d&amp;iacute;a, presenta algunas deficiencias que se magnifican en una empresa del tama&amp;ntilde;o de Microsoft: Por ejemplo, si se detecta un fallo de seguridad en un binario y se quiere desarrollar una actualizaci&amp;oacute;n de seguridad al respecto, como el c&amp;oacute;digo fuente y las&amp;nbsp;cadenas de texto est&amp;aacute;n en el mismo fichero (pese a estar separados entre s&amp;iacute;),&amp;nbsp;ser&amp;iacute;a necesario generar un par de decenas o m&amp;aacute;s de actualizaciones de seguridad, una para cada idioma en el que est&amp;aacute; disponible Windows. Esto retarda innecesariamente el desarrollo de actualizaciones de seguridad en varios idiomas, pues por lo general los errores de seguridad afectan &amp;uacute;nicamente&amp;nbsp;al c&amp;oacute;digo de la aplicaci&amp;oacute;n, no a las cadenas de texto y otros recursos que pudiera contener.&lt;/p&gt;
&lt;p&gt;Con Windows Vista se redise&amp;ntilde;&amp;oacute; en profundidad la arquitectura MUI (&lt;em&gt;Multilingual User Interface&lt;/em&gt;) que ya estaba presente en la versi&amp;oacute;n Professional de Windows XP (entre otros) para que las cadenas de texto y el c&amp;oacute;digo de las aplicaciones estuviera completamente separado, esto es, en ficheros diferentes.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0028.BinariosSeparados.png"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0028.BinariosSeparados.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Esta arquitectura MUI introducida con Windows Vista no solo beneficia a Microsoft y al usuario, que ya puede instalar un paquete de idiomas en una versi&amp;oacute;n de Windows&amp;nbsp;que no est&amp;eacute; en ingl&amp;eacute;s, tambi&amp;eacute;n beneficia a los desarrolladores de aplicaciones, pues por f&amp;iacute;n disponen de una arquitectura proporcionada por el sistema operativo para manejar recursos en m&amp;uacute;ltiples idiomas, sin ser ya necesario que se construyan una desde cero.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Qu&amp;eacute; ocurre al instalar Windows Vista/7?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En un &lt;a target="_blank" href="http://rinconwindows.blogspot.com/2007/04/detalles-sobre-la-instalacin-de-windows.html"&gt;art&amp;iacute;culo&lt;/a&gt; de mi antiguo &lt;em&gt;blog&lt;/em&gt; tengo&amp;nbsp;informaci&amp;oacute;n que explica resumidamente en qu&amp;eacute; consisten las fases de la instalaci&amp;oacute;n de Windows Vista. B&amp;aacute;sicamente lo que ocurre es que en primer lugar se instalan los binarios del sistema (independientes del idioma), y seguidamente se instala uno o varios paquetes de idiomas. Como ve, el ingl&amp;eacute;s no recibe ning&amp;uacute;n tipo de trato preferencial, se le trata como un idioma m&amp;aacute;s. La fase correspondiente a la instalaci&amp;oacute;n del paquete de idiomas inicial se realiza durante la fase&amp;nbsp;&amp;quot;Instalando caracter&amp;iacute;sticas&amp;quot;.&lt;/p&gt;
&lt;p&gt;En Windows Vista la herramienta encargada de instalar un paquete de idiomas es la denominada Package Manager (Pkgmgr.exe). En Windows 7, se usa la herramienta Dism (&lt;em&gt;Deployment Image Servicing and Imaging&lt;/em&gt;), que integra&amp;nbsp;todas las&amp;nbsp;funcionalidades de Package Manager y de otras&amp;nbsp;herramientas igualmente relacionadas con la administraci&amp;oacute;n de im&amp;aacute;genes de instalaci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;En este primer art&amp;iacute;culo se ha explicado&amp;nbsp;c&amp;oacute;mo ha ido evolucionando&amp;nbsp;la localizaci&amp;oacute;n del software a lo largo del&amp;nbsp;tiempo y se ha aclarado que en Windows Vista&amp;nbsp;y Windows 7 los binarios est&amp;aacute;n completamente separados&amp;nbsp;de las cadenas de texto, con las ventajas que esto conlleva. Esto implica tambi&amp;eacute;n que Vista/7 sean sistemas idependientes del idioma en el que se utilicen; el ingl&amp;eacute;s es un idioma como otro cualquiera.&lt;/p&gt;
&lt;p&gt;En un siguiente art&amp;iacute;culo se explicar&amp;aacute; en detalle en qu&amp;eacute; consiste exactamente un paquete de idiomas&amp;nbsp;y qu&amp;eacute; es lo que conforma la infraestructura MUI de Windows Vista/7. Se explicar&amp;aacute; tambi&amp;eacute;n c&amp;oacute;mo el sistema obtiene los recursos en el idioma establecido por el usuario. Este aspecto puede ser importante para la gente que le interese saber c&amp;oacute;mo solucionar problemas con Windows, pues me he encontrado con&amp;nbsp;alg&amp;uacute;n que otro sistema cuyo s&amp;iacute;ntoma es que una determinada aplicaci&amp;oacute;n no muestra ning&amp;uacute;n tipo de interfaz gr&amp;aacute;fica (es decir, no se abre)&amp;nbsp;y cuya causa es una configuraci&amp;oacute;n incorrecta de los recursos MUI de ese sistema.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1734902" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Multilingual+User+Interface+_2800_MUI_2900_/default.aspx">Multilingual User Interface (MUI)</category></item><item><title>Sobre el error "La operación solicitada requiere elevación" que puede devolver Runas.exe en Windows Vista/7</title><link>http://msmvps.com/blogs/dmartin/archive/2009/10/03/sobre-runas-exe-en-windows-7.aspx</link><pubDate>Sun, 04 Oct 2009 01:32:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1724594</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1724594</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1724594</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/10/03/sobre-runas-exe-en-windows-7.aspx#comments</comments><description>&lt;p&gt;En un foro que frecuento un usuario ten&amp;iacute;a el siguiente problema: Al intentar ejecutar como administrador un programa en Windows 7 usando el comando Runas.exe, le aparec&amp;iacute;a el siguiente mensaje de error:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;740: La operaci&amp;oacute;n solicitada requiere elevaci&amp;oacute;n.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Ciertamente el usuario estaba proporcionando el nombre de usuario y la contrase&amp;ntilde;a de un usuario con privilegios administrativos as&amp;iacute; que... &amp;iquest;d&amp;oacute;nde estar&amp;iacute;a el problema?&lt;/p&gt;
&lt;p&gt;En primer lugar, vamos a analizar con calma lo que quiere decir el mensaje de error. El mensaje de error &amp;quot;La operaci&amp;oacute;n solicitada requiere elevaci&amp;oacute;n&amp;quot; est&amp;aacute; recogido en el fichero de cabecera Ntstatus.h del SDK de Windows Vista y posteriores. Concretamente est&amp;aacute; definido con el nombre de macro ERROR_ELEVATION_REQUIRED.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Cu&amp;aacute;ndo se devuelve ese c&amp;oacute;digo de error durante el funcionamiento de Windows?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En Windows los procesos se crean usando la API CreateProcess. Uno de los pasos que se siguen antes de crear un proceso en Windows Vista y posteriores es comprobar si el proceso en cuesti&amp;oacute;n necesita elevar sus privilegios o no. A la hora de determinar este aspecto, entran en juego, entre otros,&amp;nbsp;dos par&amp;aacute;metros: El nivel de ejecuci&amp;oacute;n (&lt;em&gt;runlevel&lt;/em&gt;) impuesto por el manifiesto de la propia aplicaci&amp;oacute;n, y el token del usuario que est&amp;aacute; lanzando ese programa. Existen tres posibles niveles de ejecuci&amp;oacute;n para una aplicaci&amp;oacute;n:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;asInvoker&lt;/em&gt;: El nivel de ejecuci&amp;oacute;n es el mismo que el del proceso padre.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;highestAvailable&lt;/em&gt;: El nivel de ejecuci&amp;oacute;n es el de mayores privilegios posibles, considerando el tipo de cuenta desde la&amp;nbsp;cual&amp;nbsp;se ejecuta el proceso.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;requireAdministrator&lt;/em&gt;: El nivel de ejecuci&amp;oacute;n es administrativo, independientemente de las dem&amp;aacute;s circunstancias.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Esta tabla recoge de forma b&amp;aacute;sica las posibilidades:&lt;/p&gt;
&lt;table style="width:100%;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;&lt;strong&gt;&lt;span style="text-decoration:underline;"&gt;Nivel de ejecuci&amp;oacute;n de la aplicaci&amp;oacute;n&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;&lt;span style="text-decoration:underline;"&gt;&lt;em&gt;Token&lt;/em&gt; del usuario&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;&lt;span style="text-decoration:underline;"&gt;Requiere elevaci&amp;oacute;n o no&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;AsInvoker&lt;/td&gt;
&lt;td&gt;Cualquiera&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;highestAvailable&lt;/td&gt;
&lt;td&gt;Administrador &amp;quot;elevado&amp;quot;&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;highestAvailable&lt;/td&gt;
&lt;td&gt;Administrador &amp;quot;est&amp;aacute;ndar&amp;quot;&lt;/td&gt;
&lt;td&gt;S&amp;iacute;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;highestAvailable&lt;/td&gt;
&lt;td&gt;Otro caso&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;requireAdministrator&lt;/td&gt;
&lt;td&gt;Administrador &amp;quot;elevado&amp;quot;&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:239px;"&gt;requireAdministrator&lt;/td&gt;
&lt;td&gt;Otro caso&lt;/td&gt;
&lt;td&gt;S&amp;iacute;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Por administrador &amp;quot;elevado&amp;quot; me refiero a aquella cuenta con privilegios administrativos pero que, o bien ya ha elevado expl&amp;iacute;citamente sus privilegios (a trav&amp;eacute;s de un cuadro de UAC), o bien no tiene activada la caracter&amp;iacute;stica Modo de aprobaci&amp;oacute;n del administrador (&lt;em&gt;Admin Approval Mode&lt;/em&gt;). Esta caracter&amp;iacute;stica se puede desactivar desde Directiva de grupo, pero yo personalmente lo desaconsejo.&amp;nbsp;Un ejemplo de este tipo de cuentas es la cuenta &amp;quot;Administrador&amp;quot;, creada durante la instalaci&amp;oacute;n del sistema operativo. Recuerde que el resto de cuentas con privilegios administrativos poseen dos &lt;em&gt;tokens&lt;/em&gt;: uno limitado, con el que &amp;quot;act&amp;uacute;an&amp;quot; por defecto, y otro &amp;quot;administrativo&amp;quot;, que pueden aplicar si el usuario as&amp;iacute; lo indica a trav&amp;eacute;s de un cuadro de UAC.&lt;/p&gt;
&lt;p&gt;Una vez que CreateProcess falla (devuelve un valor distinto de 1) y el &amp;uacute;ltimo error se establece como ERROR_ELEVATION_REQUIRED (columna &amp;quot;Requiere elevaci&amp;oacute;n&amp;nbsp;o no&amp;quot; de la tabla anterior), es asunto del proceso padre el tratar convenientemente este error. Si no lo hace, se registrar&amp;aacute; en Visor de sucesos, apartado dedicado a UAC, un evento informando de que el proceso padre no trat&amp;oacute; apropiadamente el error&amp;nbsp;&lt;span lang="EN"&gt;ERROR_ELEVATION_REQUIRED.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;&lt;strong&gt;&amp;iquest;Qu&amp;eacute; ocurre cuando se lanza una aplicaci&amp;oacute;n desde la l&amp;iacute;nea de comandos?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;Imaginemos que el usuario intenta ejecutar el desfragmentador de disco de Windows 7 usando para ello una sintaxis de Runas.exe como esta:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;&lt;strong&gt;runas /u:UsuarioAdministrador dfrgui.exe&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;&lt;/span&gt;&lt;span lang="EN"&gt;B&amp;aacute;sicamente la l&amp;iacute;nea de comandos detecta que no se trata de un comando interno, sino que se trata del programa Runas.exe, y por tanto&amp;nbsp;se dispone a ejecutarlo usando CreateProcess. Como Runas.exe no es un programa que est&amp;aacute; marcado para requerir elevaci&amp;oacute;n de privilegios, CreateProcess retorna &amp;eacute;xito.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;Una vez que el planificador del sistema operativo&amp;nbsp;cede el control al proceso Runas.exe reci&amp;eacute;n creado, este se dispone a analizar su l&amp;iacute;nea de comandos. Se encuentra con una petici&amp;oacute;n de ejecutar Dfrgui.exe como si fuera el usuario administrador pasado como par&amp;aacute;metro. Sin embargo, Runas.exe&amp;nbsp;es poco&amp;nbsp;m&amp;aacute;s que un &amp;quot;envoltorio&amp;quot; de la API &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ms682431(VS.85).aspx"&gt;CreateProcessWithLogonW&lt;/a&gt;, que a su vez es poco m&amp;aacute;s que un envoltorio de la API CreateProcess, pero pasando otro perfil de usuario distinto como par&amp;aacute;metro.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;Durante su ejecuci&amp;oacute;n, CreateProcess determina que Dfrgui.exe requiere privilegios administrativos (puesto que as&amp;iacute; se lo indica su manifiesto), y por ello devuelve falso y establace el &amp;uacute;ltimo error como ERROR_ELEVATION_REQUIRED. Como Runas.exe es una herramienta que no est&amp;aacute; dise&amp;ntilde;ada para tratar apropiadamente ese error, simplemente lo devuelve por pantalla de la forma &amp;quot;740: La operaci&amp;oacute;n solicitada requiere elevaci&amp;oacute;n&amp;quot;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;Una vez desvelado el misterio, resta por comentar un aspecto que a estas alturas quiz&amp;aacute; ya se haya planteado:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;&lt;strong&gt;&amp;iquest;C&amp;oacute;mo es posible que ejecutando Dfrgui.exe desde la l&amp;iacute;nea de comandos -sin usar Runas.exe- s&amp;iacute; que aparezca un cuadro de UAC?&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang="EN"&gt;El secreto est&amp;aacute; en que la l&amp;iacute;nea de comandos, antes de llamar a CreateProcess, informa al sistema de que va a tratar los posibles ERROR_ELEVATION_REQUIRED que puedan surgir. Esto lo consigue estableciendo unos atributos no documentados a la estructura &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ms686329(VS.85).aspx"&gt;STARTUPINFOEX&lt;/a&gt;, que se pasa como par&amp;aacute;metro a la familia de API CreateProcess. Esto hace que no se registre el correspondiente error en el apartado UAC del Visor de sucesos. Seguidamente, la l&amp;iacute;nea de comandos, sabiendo que se trata de un programa que debe elevar sus privilegios, lo intenta ejecutar mediante la API &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/bb762154(VS.85).aspx"&gt;ShellExecuteEx&lt;/a&gt;. &lt;strong&gt;Esta API s&amp;iacute; muestra el correspondiente cuadro de UAC, as&amp;iacute; que es la v&amp;iacute;a apropiada para ejecutar una aplicaci&amp;oacute;n que requiera privilegios administrativos.&lt;/strong&gt;&lt;/span&gt;
&lt;p&gt;En resumen, me gustar&amp;iacute;a resaltar estos puntos&amp;nbsp;del tema del art&amp;iacute;culo:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;En Windows Vista y Windows 7 la &amp;uacute;nica forma de ejecutar algo con privilegios administrativos es mediante un cuadro de UAC. No vale con poner el nombre de usuario y la contrase&amp;ntilde;a de un administrador en la l&amp;iacute;nea de comandos.&lt;/li&gt;
&lt;li&gt;Todo lo que se ejecute mediante la API CreateProcess, o alguna derivada de ella,&amp;nbsp;&lt;strong&gt;no har&amp;aacute; que aparezca un cuadro de UAC&lt;/strong&gt;. Un ejemplo de ello es la utilidad Runas.exe.&lt;/li&gt;
&lt;li&gt;Runas.exe, en Windows Vista/7, sirve para ejecutar una aplicaci&amp;oacute;n como si fuera otro usuario, &lt;strong&gt;pero no sirve para ejecutarla con mayores privilegios.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Si quiere que se ejecute una aplicaci&amp;oacute;n que requiere privilegios administrativos, &lt;strong&gt;use la API ShellExecuteEx&lt;/strong&gt;, o alguna de sus derivadas. Esta API s&amp;iacute; permite la aparici&amp;oacute;n de un cuadro de UAC para que el usuario eleve sus privilegios.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1724594" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Curiosidades/default.aspx">Curiosidades</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consejos/default.aspx">Consejos</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/UAC/default.aspx">UAC</category></item><item><title>¿Cuándo crea Windows un punto de restauración automático?</title><link>http://msmvps.com/blogs/dmartin/archive/2009/09/17/191-cu-225-ndo-crea-Windows-un-punto-de-restauraci-243-n-autom-225-tico.aspx</link><pubDate>Fri, 18 Sep 2009 02:31:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1723151</guid><dc:creator>dmartin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1723151</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1723151</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/09/17/191-cu-225-ndo-crea-Windows-un-punto-de-restauraci-243-n-autom-225-tico.aspx#comments</comments><description>&lt;p&gt;Una de las dudas que m&amp;aacute;s surgen entre los usuarios de Restaurar sistema es cada cu&amp;aacute;nto tiempo se crear&amp;aacute; un punto de restauraci&amp;oacute;n autom&amp;aacute;tico. Este art&amp;iacute;culo pretende dar una respuesta precisa a esta cuesti&amp;oacute;n para as&amp;iacute; esclarecer aquellos casos en los que el sistema no haya creado un punto de restauraci&amp;oacute;n desde hace tiempo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Windows XP&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En Windows XP cada hora una tarea interna del Programador de tareas se encarga de analizar si el sistema est&amp;aacute; inactivo, es decir, si no est&amp;aacute; haciendo uso de la CPU ni del subsistema de E/S. Si se diera el caso, se realizan dos posibles comprobaciones para determinar si se debe crear un punto de restauraci&amp;oacute;n autom&amp;aacute;tico:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Si han pasado m&amp;aacute;s de 24 horas desde el &amp;uacute;ltimo punto de restauraci&amp;oacute;n, se crea uno autom&amp;aacute;ticamente. Este par&amp;aacute;metro (24 horas) es editable desde el Registro del sistema operativo, concretamente en la clave HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\SystemRestore, valor &lt;em&gt;RPGlobalInterval&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Si la sesi&amp;oacute;n actual de trabajo con el PC&amp;nbsp;est&amp;aacute; durando m&amp;aacute;s de X horas y el &amp;uacute;ltimo punto de restauraci&amp;oacute;n es m&amp;aacute;s antiguo, se crea un punto de restauraci&amp;oacute;n autom&amp;aacute;tico. Por defecto, esta configuraci&amp;oacute;n &lt;strong&gt;no est&amp;aacute; establecida&lt;/strong&gt;, pero puede hacerlo desde el Registro en la clave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore, valor &lt;em&gt;RPSessionInterval&lt;/em&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La comprobaci&amp;oacute;n de inactividad se realiza por defecto cada hora pero podr&amp;iacute;a variar dependiendo de los valores de ciertas pol&amp;iacute;ticas de energ&amp;iacute;a de su equipo. Eche un vistazo a los valores &lt;strong&gt;IdleTimeoutDc, IdleTimeoutAc&lt;/strong&gt; de esta p&amp;aacute;gina de MSDN:&lt;strong&gt; &lt;/strong&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa373239(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/aa373239(VS.85).aspx&lt;/a&gt;. Aprovechando la inactividad, Restaurar sistema realiza otras tareas, tales&amp;nbsp;como eliminar aquellos puntos de restauraci&amp;oacute;n cuyo tiempo de vida ya haya expirado, y de paso comprimir el almac&amp;eacute;n usando compresi&amp;oacute;n NTFS. Estas tareas se realizan solo si el equipo est&amp;aacute; conectado a la corriente el&amp;eacute;ctrica, para evitar que se agote la bater&amp;iacute;a en el caso de port&amp;aacute;tiles.&lt;/p&gt;
&lt;p&gt;Si quiere profundizar en el funcionamiento de la herramienta Restaurar sistema de Windows XP, eche un vistazo a esta serie de art&amp;iacute;culos de mi antiguo &lt;em&gt;blog&lt;/em&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://rinconwindows.blogspot.com/2007/02/cmo-funciona-restaurar-sistema-parte-i.html"&gt;http://rinconwindows.blogspot.com/2007/02/cmo-funciona-restaurar-sistema-parte-i.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://rinconwindows.blogspot.com/2007/03/cmo-funciona-restaurar-sistema-parte-ii.html"&gt;http://rinconwindows.blogspot.com/2007/03/cmo-funciona-restaurar-sistema-parte-ii.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Windows Vista/7&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En Windows Vista/7 el nuevo Programador de tareas muestra informaci&amp;oacute;n detallada acerca de la tarea programada que crea un punto de restauraci&amp;oacute;n autom&amp;aacute;tico. Abra Programador de tareas, apartado \Microsoft\Windows\SystemRestore. La tarea &lt;em&gt;SR&lt;/em&gt; tiene como desencadenantes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El inicio del sistema.&lt;/li&gt;
&lt;li&gt;Diariamente a las 12 AM.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En esos instantes se ejecutar&amp;aacute; el comando %windir%\system32\rundll32.exe /d srrstr.dll,ExecuteScheduledSPPCreation.&lt;/p&gt;
&lt;p&gt;El modificador /d de Rundll32.exe ya lo trat&amp;eacute;&amp;nbsp;ligeramente &lt;a target="_blank" href="http://rinconwindows.blogspot.com/2007/10/sobre-el-mensaje-de-error-ha-ocurrido.html"&gt;en mi antiguo &lt;em&gt;blog&lt;/em&gt;&lt;/a&gt;: Se trata de un modificador que le dice a Rundll32.exe &amp;quot;ejecuta este comando y no captures las posibles excepciones que ocurran&amp;quot;. La funci&amp;oacute;n &lt;em&gt;ExecuteScheduledSPPCreation&lt;/em&gt; es la encargada de verificar si el punto de restauraci&amp;oacute;n m&amp;aacute;s antiguo tiene m&amp;aacute;s de 12 horas (la mitad que en el caso de XP) y, si as&amp;iacute; fuese, crear&amp;aacute; uno nuevo.&lt;/p&gt;
&lt;p&gt;Hay que tener en cuenta otras condiciones adicionales que puede observar en la pesta&amp;ntilde;a &lt;em&gt;Condiciones&lt;/em&gt;: El sistema debe estar inactivo durante al menos 10 minutos y adem&amp;aacute;s, en el caso de port&amp;aacute;tiles, debe estar conectado a la red el&amp;eacute;ctrica.&lt;/p&gt;
&lt;p&gt;Espero que este art&amp;iacute;culo haya aclarado sus dudas con respecto a la creaci&amp;oacute;n autom&amp;aacute;tica de puntos de restauraci&amp;oacute;n por parte de Windows. En resumen, si su sistema no genera periodicamente puntos de restauraci&amp;oacute;n puede deberse a:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El servicio Programador de tareas no est&amp;aacute; iniciado.&lt;/li&gt;
&lt;li&gt;El sistema no est&amp;aacute; inactivo durante los periodos de tiempo impuestos por Windows, seg&amp;uacute;n lo explicado anteriormente.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1723151" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Curiosidades/default.aspx">Curiosidades</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category></item><item><title>Sobre la nueva sintaxis del Panel de control en Windows Vista/Windows 7</title><link>http://msmvps.com/blogs/dmartin/archive/2009/09/11/sobre-la-nueva-sintaxis-del-panel-de-control-en-windows-vista-windows-7.aspx</link><pubDate>Fri, 11 Sep 2009 23:42:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1722676</guid><dc:creator>dmartin</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1722676</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1722676</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/09/11/sobre-la-nueva-sintaxis-del-panel-de-control-en-windows-vista-windows-7.aspx#comments</comments><description>&lt;p&gt;Quiz&amp;aacute; ya se haya dado cuenta de que en Windows Vista/Windows 7&amp;nbsp;algunos m&amp;oacute;dulos del Panel de control que anteriormente estaban implementados en la cl&amp;aacute;sica forma de un fichero .cpl ahora lo est&amp;aacute;n en la forma de un fichero ejecutable (.exe). El motivo de este cambio es que con la introducci&amp;oacute;n de Control de cuentas de usuario (UAC),&amp;nbsp;se da el caso de que algunos de estos m&amp;oacute;dulos requieren privilegios administrativos para ejecutarse. Ve&amp;aacute;moslo con un ejemplo:&lt;/p&gt;
&lt;p&gt;El ejecutable DPIScaling.exe del&amp;nbsp;directorio \Windows\System32&amp;nbsp;implementa la opci&amp;oacute;n del&amp;nbsp;Panel de control que permite cambiar&amp;nbsp;la&amp;nbsp;escala DPI del sistema. Este m&amp;oacute;dulo requiere privilegios administrativos&amp;nbsp;para ejecutarse, como as&amp;iacute; indica su fichero de manifiesto. Para verlo pr&amp;aacute;cticamente, descargue Strings desde&amp;nbsp;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx"&gt;http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx&lt;/a&gt;&amp;nbsp;y abra una&amp;nbsp;ventana de l&amp;iacute;nea de comandos en el directorio donde la&amp;nbsp;ha extra&amp;iacute;do. Introduzca este comando y pulse INTRO:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;strings %SystemRoot%\System32\DPIScaling.exe&amp;nbsp;| findstr /i requireAdministrator&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;La salida del comando, &lt;code&gt;level=&amp;quot;requireAdministrator&amp;quot;&lt;/code&gt;, nos indica que el ejecutable en cuesti&amp;oacute;n requerir&amp;aacute; privilegios administrativos cuando lo invoquemos. Otros posibles valores para el atributo level son:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;asInvoker:&lt;/em&gt; El ejecutable no requerir&amp;aacute; privilegios administrativos.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;highestAvailable:&lt;/em&gt; El ejecutable se ejecutar&amp;aacute; con los m&amp;aacute;ximos privilegios que le permita la cuenta de&amp;nbsp;usuario&amp;nbsp;desde la que ha sido invocado.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nombres can&amp;oacute;nicos en Windows Vista/Windows 7&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Esta reestructuraci&amp;oacute;n de buena parte de los elementos del Panel de control trajo consigo una de las novedades&amp;nbsp;que se introdujeron en&amp;nbsp;Windows Vista y que se han mantenido en&amp;nbsp;Windows 7: la posibilidad de abrir elementos del Panel de control usando un nombre can&amp;oacute;nico. Un nombre can&amp;oacute;nico es un nombre en ingl&amp;eacute;s, no traducible, que describe de manera cercana al usuario el cometido de ese elemento del Panel de control. Esto evita que el usuario tenga que aprender el nombre de ficheros .cpl, muchas veces cr&amp;iacute;pticos, y adem&amp;aacute;s permite separar el nombre del &amp;iacute;tem de su implementaci&amp;oacute;n, ya sea en un cl&amp;aacute;sico fichero .cpl o, ya sea en un fichero .dll o .exe.&lt;/p&gt;
&lt;p&gt;Por ejemplo, para abrir el panel Agregar o quitar programas de Windows Vista/Windows 7, se puede usar esta sintaxis:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%windir%\system32\control.exe /name Microsoft.ProgramsAndFeatures&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;De d&amp;oacute;nde proviene ese nombre can&amp;oacute;nico, Microsoft.ProgramsAndFeatures?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cuando el ejecutable Control.exe recibe el par&amp;aacute;metro /name seguido de un nombre can&amp;oacute;nico, se invoca a la funci&amp;oacute;n &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/bb775394(VS.85).aspx"&gt;IOpenControlPanel::Open&lt;/a&gt;, la cual&amp;nbsp;en primer lugar busca el elemento correspondiente del Panel de control al que se est&amp;aacute; haciendo referencia. Cabe destacar que el Panel de control es un directorio &lt;strong&gt;virtual&lt;/strong&gt; (no reside f&amp;iacute;sicamente en el disco, sino que est&amp;aacute; implementado por el &lt;em&gt;shell&lt;/em&gt;), situado en la clave de Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace. El valor &lt;em&gt;(Predeterminado)&lt;/em&gt; de cada una de las subclaves de esa rama de Registro contiene el nombre con el que se mostrar&amp;aacute; en Panel de control (no el nombre can&amp;oacute;nico). Para encontrar la implementaci&amp;oacute;n de, digamos, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{0DF44EAA-FF21-4412-828E-260A8728E7F1} (&amp;iacute;tem de las propiedades de la barra de tareas y men&amp;uacute; Inicio), se accede a la clave de registro HKEY_CLASSES_ROOT\CLSID\{0DF44EAA-FF21-4412-828E-260A8728E7F1}, en la cual existe un valor de registro de nombre &lt;em&gt;System.ApplicationName&lt;/em&gt; y cuyo contenido es el nombre can&amp;oacute;nico: &lt;em&gt;Microsoft.TaskbarAndStartMenu&lt;/em&gt;. As&amp;iacute; pues, para abrir las propiedades de la barra de tareas y del men&amp;uacute; Inicio ya sabemos que&amp;nbsp;bastar&amp;iacute;a con ejecutar lo siguiente:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%windir%\system32\control.exe /name Microsoft.TaskbarAndStartMenu&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Para ver qu&amp;eacute; es lo que realmente se ejecuta, eche un vistazo a la clave HKEY_CLASSES_ROOT\CLSID\{0DF44EAA-FF21-4412-828E-260A8728E7F1}\Shell\Open\Command.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cada &amp;iacute;tem del Panel de control puede implementar varias p&amp;aacute;ginas&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Podemos entender las p&amp;aacute;ginas como subsecciones espec&amp;iacute;ficas del &amp;iacute;tem del Panel de control. Para indicar una, debe usarse la sintaxis&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%windir%\system32\control.exe /name &lt;em&gt;Nombre_can&amp;oacute;nico&lt;/em&gt; /page &lt;em&gt;P&amp;aacute;gina&lt;/em&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Ve&amp;aacute;moslo con un ejemplo:&lt;/p&gt;
&lt;p&gt;Con los conocimientos que hemos adquirido, nos resulta sencillo determinar que el &amp;iacute;tem Personalizar del Panel de control est&amp;aacute; implementado en la DLL Themecpl.dll. Es en esta DLL donde encontraremos informaci&amp;oacute;n acerca de las posibles p&amp;aacute;ginas de este &amp;iacute;tem, en la forma, como no, de fichero XML.&lt;/p&gt;
&lt;p&gt;Esta vez usaremos la aplicaci&amp;oacute;n gr&amp;aacute;fica Resource Hacker, que puede descargar gratuitamente desde &lt;a href="http://www.angusj.com/resourcehacker/"&gt;http://www.angusj.com/resourcehacker/&lt;/a&gt;. Al abrir el fichero Themecpl.dll en&amp;nbsp;esta aplicaci&amp;oacute;n,&amp;nbsp;nos encontramos con dos ficheros XML adicionales al t&amp;iacute;pico fichero de manifiesto (.manifest) que hab&amp;iacute;amos visto hasta ahora.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/7838.Tasks_5F00_CPL.PNG"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x494/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/7838.Tasks_5F00_CPL.PNG" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/7838.Tasks_5F00_CPL.PNG"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Este primer fichero XML especifica una serie de tareas que puede realizar el elemento del Panel de control &amp;quot;Personalizar&amp;quot;. Estas tareas (cambiar los colores, el fondo de pantalla, etc.) se muestran como enlaces de texto justo debajo del elemento del Panel de control (suponiendo que est&amp;eacute; configurado en la vista por categor&amp;iacute;as). Y lo que es m&amp;aacute;s importante, estas tareas son indizables por el sistema de b&amp;uacute;squeda de Windows Vista. Puede obtener m&amp;aacute;s informaci&amp;oacute;n en este art&amp;iacute;culo de MSDN: &lt;a href="http://msdn.microsoft.com/en-us/library/bb776840(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/bb776840(VS.85).aspx&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0027.Paginas_5F00_CPL.PNG"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0027.Paginas_5F00_CPL.PNG"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x494/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/0027.Paginas_5F00_CPL.PNG" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Esta segunda imagen hace referencia&amp;nbsp;al segundo fichero XML, que&amp;nbsp;es el que contiene la informaci&amp;oacute;n acerca de cada una de las p&amp;aacute;ginas que implementa este &amp;iacute;tem del Panel de control. Entre las etiquetas &lt;em&gt;&amp;lt;pagedefinition&amp;gt;&amp;lt;/pagedefinition&amp;gt;&lt;/em&gt; nos encontramos con una etiqueta &lt;em&gt;&amp;lt;properties&amp;gt;,&lt;/em&gt; que hace referencia a cada una de las p&amp;aacute;ginas. El atributo &lt;em&gt;canonicalName&lt;/em&gt; nos ofrece su nombre can&amp;oacute;nico.&lt;/p&gt;
&lt;p&gt;Como vemos, el &amp;iacute;tem &amp;quot;Personalizar&amp;quot; del Panel de control admite como sintaxis:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%windir%\system32\control.exe /name Microsoft.Personalization /page pageColorization&lt;/code&gt; (para cambiar la configuraci&amp;oacute;n de color)&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%windir%\system32\control.exe /name Microsoft.Personalization /page pageWallpaper&lt;/code&gt; (para cambiar el fondo de escritorio)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ejercicio&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ahora que ya sabe c&amp;oacute;mo escudri&amp;ntilde;ar en los &amp;iacute;tems del Panel de control con el fin de construir accesos directos lo m&amp;aacute;s directos posibles (valga la redundancia), le propongo como ejercicio que en un sistema Windows 7 averig&amp;uuml;e la sintaxis para un acceso directo al Monitor de confiabilidad, que como sabe en Windows 7 est&amp;aacute; algo escondido dentro del Centro de actividades (&lt;em&gt;Action Center&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Si se rinde, puede ver la soluci&amp;oacute;n&amp;nbsp;seleccionando texto a partir de aqu&amp;iacute;: &lt;span style="color:white;"&gt;control.exe /name&amp;nbsp;Microsoft.ActionCenter /page pageReliabilityView&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1722676" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Curiosidades/default.aspx">Curiosidades</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Funcionamiento/default.aspx">Funcionamiento</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Descubrir valores de Registro no documentados usando Process Monitor</title><link>http://msmvps.com/blogs/dmartin/archive/2009/08/16/descubrir-valores-de-registro-no-documentados-usando-process-monitor.aspx</link><pubDate>Sun, 16 Aug 2009 23:01:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1716254</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1716254</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1716254</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/08/16/descubrir-valores-de-registro-no-documentados-usando-process-monitor.aspx#comments</comments><description>&lt;p&gt;A mucha gente le gusta&amp;nbsp;personalizar su sistema de escritorio al m&amp;aacute;ximo posible. Por ello, Microsoft acostumbra a incorporar en sus sistemas operativos bastantes men&amp;uacute;s y cuadros de di&amp;aacute;logo capaces de personalizar muchos de los detalles de funcionamiento de Windows. Sin embargo, hay ciertos detalles que no son modificables desde la interfaz gr&amp;aacute;fica, solamente desde el Registro; siempre&amp;nbsp;siguiendo los pasos de alg&amp;uacute;n art&amp;iacute;culo de la documentaci&amp;oacute;n oficial de Microsoft (KB, MSDN LIbrary, Technet Library, etc.). Tambi&amp;eacute;n hay detalles que no est&amp;aacute;n documentados pero que&amp;nbsp;pueden &amp;quot;descubrirse&amp;quot; utilizando herramientas de monitoreo del Registro, como Process Monitor, tal y como se explica en este art&amp;iacute;culo.&lt;/p&gt;
&lt;p&gt;En el caso que nos ocupa, el usuario quer&amp;iacute;a modificar el tiempo de aparici&amp;oacute;n de la vista en miniatura de una aplicaci&amp;oacute;n en la barra de tareas de Windows Vista. En Windows Vista, la funcionalidad Windows Aero permite ver, a golpe de rat&amp;oacute;n, el contenido de todas y cada una de las ventanas minimizadas en la barra de tareas. El usuario intentaba buscar una forma de acortar ese tiempo de aparici&amp;oacute;n de la vista en miniatura, pues le parec&amp;iacute;a excesivo. En Internet la alternativa que es m&amp;aacute;s popular es la de modificar el valor de Registro &lt;em&gt;MouseHoverTime&lt;/em&gt; de la clave de Registro HKEY_CURRENT_USER\Control Panel\Mouse. Sin embargo, este valor influye en el tiempo que tarda en reconocerse un posicionamiento del cursor del rat&amp;oacute;n, en cualquier parte de la interfaz gr&amp;aacute;fica de Windows. Era necesario buscar alg&amp;uacute;n valor de Registro m&amp;aacute;s espec&amp;iacute;fico, y para ello iba a recurrir a Process Monitor.&lt;/p&gt;
&lt;p&gt;Antes de nada hay que comentar que no ten&amp;iacute;a la garant&amp;iacute;a de que existiera un valor de Registro que controlara ese aspecto tan espec&amp;iacute;fico de la interfaz gr&amp;aacute;fica de Windows. De existir, suelen ser par&amp;aacute;metros que solo se tienen en cuenta en las versiones de depuraci&amp;oacute;n (&lt;em&gt;checked&lt;/em&gt;) del sistema operativo. De todas formas, abr&amp;iacute; Process Monitor y establec&amp;iacute; un filtro de aquellos eventos de Registro que contuvieran en su ruta la palabra&amp;nbsp;&amp;quot;Thumbnail&amp;quot;. Inici&amp;eacute; Explorer.exe y r&amp;aacute;pidamente me encontr&amp;eacute; con&amp;nbsp;tres eventos bastante interesantes:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/5140.ExplorerThumbnails.PNG"&gt;&lt;img src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/5140.ExplorerThumbnails.PNG" border="0" style="max-height:63px;max-width:1023px;" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;El primer evento indica el momento en que Explorer.exe examina una directiva, &lt;em&gt;TaskbarNoThumbnail&lt;/em&gt;, configurable desde Directiva de grupo, encargada&amp;nbsp;de desactivar las vistas en miniatura de la barra de tareas. La lectura de este valor me hizo pensar que los dos valores siguientes podr&amp;iacute;an estar relacionados con lo que buscaba.&lt;/p&gt;
&lt;p&gt;Esos dos eventos siguientes hacen referencia a una b&amp;uacute;squeda de cierta rama en el Registro (&lt;em&gt;ExplorerThumbnails&lt;/em&gt;), tanto en la rama HKEY_CURRENT_USER como en la rama HKEY_LOCAL_MACHINE. El primer evento hace referencia al SID de mi usuario dentro de la rama HKEY_USERS (HKU) simplemente porque ejecut&amp;eacute; Process Monitor desde una cuenta limitada, proporcionando obviamente&amp;nbsp;el nombre de usuario y contrase&amp;ntilde;a del administrador.&lt;/p&gt;
&lt;p&gt;&amp;iquest;Qu&amp;eacute; ser&amp;iacute;a esa rama &lt;em&gt;ExplorerThumbnails&lt;/em&gt;? La verdad es que no encontr&amp;eacute; nada documentado en Internet, pero su nombre era lo suficientemente atractivo como para seguir indagando. Una de las cosas que suelo hacer en casos como este es crear la clave que busca en este caso Explorer.exe y ver qu&amp;eacute; valores o subclaves de Registro busca a continuaci&amp;oacute;n. Eso hice: Abr&amp;iacute; Editor del Registro y cre&amp;eacute; la clave de Registro &lt;em&gt;ExplorerThumbnails&lt;/em&gt;. Volv&amp;iacute; a capturar una traza con Process Monitor y el resultado ofreci&amp;oacute; otros tres valores tan interesantes como desconocidos:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/3733.Contenidos_5F00_ExplorerThumbnails.PNG" border="0" style="max-height:146px;max-width:1031px;" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Los valores &lt;em&gt;InitialThumbnail&lt;/em&gt;, &lt;em&gt;InitialTooltip&lt;/em&gt; y &lt;em&gt;AutoPopTooltip&lt;/em&gt; me hac&amp;iacute;an pensar que efectivamente estaban relacionados con lo que realmente buscaba: Modificar el tiempo de aparici&amp;oacute;n de la vista en miniatura. En este caso podr&amp;iacute;a haber experimentado introduciendo algunos valores aleatorios para esos valores de Registro y observar los resultados, aunque en este caso recurr&amp;iacute; a una lectura del c&amp;oacute;digo fuente de Explorer.&lt;/p&gt;
&lt;p&gt;Al parecer, el valor &lt;em&gt;InitialThumbnail&lt;/em&gt; tiene que ver con el tiempo en milisegundos que tarda en aparecer la vista en miniatura desde que se sit&amp;uacute;a el cursor del rat&amp;oacute;n en la aplicaci&amp;oacute;n minimizada en la barra de tareas; &lt;em&gt;InitialTooltip&lt;/em&gt; influye en el tiempo de aparici&amp;oacute;n del texto emergente que siempre aparece encima de la vista en miniatura, un tiempo despu&amp;eacute;s. Por &amp;uacute;ltimo, &lt;em&gt;AutoPopTooltip&lt;/em&gt; influye en el tiempo que tarda en desaparecer el texto emergente. Por defecto, si no se encuentran esos valores en el Registro, el sistema supone, respectivamente, 500, 1000 y 5000 milisegundos.&lt;/p&gt;
&lt;p&gt;Para concluir, codifiqu&amp;eacute; una aplicaci&amp;oacute;n gr&amp;aacute;fica que facilitara la modificaci&amp;oacute;n de estos valores en el&amp;nbsp;Registro: &lt;a href="http://winvista.mvps.org/Ficheros/TweakThumbnails.zip"&gt;http://winvista.mvps.org/Ficheros/TweakThumbnails.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ya conoce otro posible uso de Process Monitor: Intentar descubrir valores de Registro (o ficheros) no documentados pero que pueden permitirnos configurar aspectos m&amp;aacute;s o menos interesantes del sistema operativo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;/strong&gt; Como indico en el margen izquierdo de este &lt;em&gt;blog&lt;/em&gt;, toda la informaci&amp;oacute;n que no est&amp;aacute; documentada por Microsoft es muy susceptible de cambiar e incluso de desaparecer en versiones posteriores de Windows. Este es el caso particular de esta rama del Registro, pues no es tenida en cuenta en Windows 7. Adicionalmente, deber&amp;aacute; tomar las medidas oportunas si aplica este&lt;em&gt; tip&lt;/em&gt; en un entorno de producci&amp;oacute;n, pues de seguro se trata de un par&amp;aacute;metro que no est&amp;aacute; tan probado como el resto de personalizaciones conocidas en el sistema operativo.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1716254" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Curiosidades/default.aspx">Curiosidades</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Explorer/default.aspx">Explorer</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Mostrar una lista de puntos de restauración</title><link>http://msmvps.com/blogs/dmartin/archive/2009/07/23/mostrar-una-lista-de-puntos-de-restauraci-243-n.aspx</link><pubDate>Thu, 23 Jul 2009 12:54:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1706554</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1706554</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1706554</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/07/23/mostrar-una-lista-de-puntos-de-restauraci-243-n.aspx#comments</comments><description>&lt;p&gt;Hace unos d&amp;iacute;as en un grupo de noticias que frecuento&amp;nbsp;un usuario que estaba utilizando &lt;a target="_blank" href="http://ekort.blogspot.com/2007/03/crear-un-listado-de-todos-los-puntos-de.html"&gt;este &lt;/a&gt;&lt;em&gt;&lt;a target="_blank" href="http://ekort.blogspot.com/2007/03/crear-un-listado-de-todos-los-puntos-de.html"&gt;script&lt;/a&gt; &lt;/em&gt;del MVP Enrique Cort&amp;eacute;s se preguntaba por qu&amp;eacute; en el fichero de resultados las horas de cada punto de restauraci&amp;oacute;n no coincid&amp;iacute;an con las mostradas en el calendario de Restaurar sistema. &lt;/p&gt;
&lt;p&gt;Esto se debe a que en la informaci&amp;oacute;n que se guarda en el almac&amp;eacute;n de puntos de restauraci&amp;oacute;n (y que es accedida por WMI en el &lt;em&gt;script&lt;/em&gt;) las fechas y horas tienen como huso horario +000 (GMT). As&amp;iacute; pues, modifiqu&amp;eacute; el &lt;em&gt;script&lt;/em&gt; para que las fechas se conviertan a la zona horaria del sistema en cuesti&amp;oacute;n y aprovech&amp;eacute; para mostrarlas en un formato m&amp;aacute;s legible. En principio el &lt;em&gt;script&lt;/em&gt; es&amp;nbsp;compatible con cualquier versi&amp;oacute;n a partir de XP, pero en Vista y&amp;nbsp;7 deber&amp;aacute; ejecutarlo con privilegios administrativos.&lt;/p&gt;
&lt;p&gt;Puede descargar el&amp;nbsp;&lt;em&gt;script&lt;/em&gt; modificado&amp;nbsp;desde &lt;a target="_blank" href="http://winvista.mvps.org/Tema.aspx?ID=418"&gt;esta p&amp;aacute;gina&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;iexcl;Que lo disfuten!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1706554" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/WMI/default.aspx">WMI</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Tips/default.aspx">Tips</category></item><item><title>¿/Savecred, /Savedcred, /Savedcreds...? Es lo mismo</title><link>http://msmvps.com/blogs/dmartin/archive/2009/07/02/191-savecred-savedcred-savedcreds-es-lo-mismo.aspx</link><pubDate>Thu, 02 Jul 2009 18:57:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1697592</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1697592</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1697592</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/07/02/191-savecred-savedcred-savedcreds-es-lo-mismo.aspx#comments</comments><description>&lt;p&gt;Como quiz&amp;aacute; sepa, el comando Runas.exe de Windows XP y Windows Server 2003&amp;nbsp;sirve para ejecutar procesos en el contexto de otra cuenta de usuario. Los usuarios dom&amp;eacute;sticos normalmente lo usan para ejecutar un proceso como administrador desde una cuenta limitada. Echando un vistazo al listado de par&amp;aacute;metros de Runas.exe nos encontramos con uno que suele llamar la atenci&amp;oacute;n de bastante gente. Sirve para almacenar temporalmente en el administrador de credenciales (&lt;em&gt;Credential Manager&lt;/em&gt;) el usuario y contrase&amp;ntilde;a que va a ejecutar el programa. El atractivo de este par&amp;aacute;metro es que&amp;nbsp;no tendremos que introducir el nombre de usuario y contrase&amp;ntilde;a para ese programa durante la sesi&amp;oacute;n en curso. Sin embargo, no hay unanimidad con respecto al nombre del par&amp;aacute;metro (incluso la propia documentaci&amp;oacute;n del sistema operativo creo que presenta alguna inconsistencia al respecto): Unos lo llaman&lt;strong&gt; /savecred&lt;/strong&gt;, otros &lt;strong&gt;/savedcred&lt;/strong&gt;, otros&lt;strong&gt; /savedcreds&lt;/strong&gt;... Incluso en algunos sitios se indica que tienen sem&amp;aacute;ntica diferente. &lt;/p&gt;
&lt;p&gt;Nada m&amp;aacute;s lejos de la realidad. Runas.exe solo entiende el par&amp;aacute;metro &lt;strong&gt;/sa&lt;/strong&gt; (que contiene el m&amp;iacute;nimo n&amp;uacute;mero de letras que diferencian&lt;strong&gt; /savecred&lt;/strong&gt; de los&amp;nbsp;par&amp;aacute;metros&lt;strong&gt; /smartcard&lt;/strong&gt; y &lt;strong&gt;/showtrustlevels&lt;/strong&gt;); lo que venga despu&amp;eacute;s le es indiferente. Del mismo modo, en cuanto se encuentra con&lt;strong&gt; /p&lt;/strong&gt; supone el par&amp;aacute;metro &lt;strong&gt;/profile&lt;/strong&gt;; si se encuentra con&lt;strong&gt; /e&lt;/strong&gt; supone&lt;strong&gt; /env&lt;/strong&gt;, y as&amp;iacute; sucesivamente.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;/strong&gt; Por limitaciones del administrador de credenciales de XP Home Edition, el par&amp;aacute;metro&lt;strong&gt; /savecred&lt;/strong&gt; no es tenido en cuenta en esta versi&amp;oacute;n de Windows. Este art&amp;iacute;culo no es aplicable tampoco a Windows Vista, pues el comando Runas.exe en Windows Vista es bastante diferente del de XP y ser&amp;aacute; tema de un pr&amp;oacute;ximo art&amp;iacute;culo.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1697592" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Curiosidades/default.aspx">Curiosidades</category></item><item><title>Sobre el atributo de sólo lectura aplicado a carpetas</title><link>http://msmvps.com/blogs/dmartin/archive/2009/06/02/sobre-el-atributo-de-s-243-lo-lectura-aplicado-a-carpetas.aspx</link><pubDate>Tue, 02 Jun 2009 13:21:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1693647</guid><dc:creator>dmartin</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1693647</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1693647</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/06/02/sobre-el-atributo-de-s-243-lo-lectura-aplicado-a-carpetas.aspx#comments</comments><description>&lt;p&gt;Si se hiciera un listado con las consultas m&amp;aacute;s frecuentes en los foros de Windows, seguro que esta ocupar&amp;iacute;a una posici&amp;oacute;n bastante destacada: &amp;iquest;Por qu&amp;eacute; no puedo cambiar el atributo de solo lectura a una carpeta de mi sistema?&lt;/p&gt;
&lt;p&gt;Pese a que Microsoft dispone de un art&amp;iacute;culo al respecto (&lt;a target="_blank" href="http://support.microsoft.com/kb/326549/es"&gt;KB326549&lt;/a&gt;), considero que mucha gente a&amp;uacute;n tiene dudas sobre este tema y por eso me he decidido a escribir este art&amp;iacute;culo.&lt;/p&gt;
&lt;p&gt;Si un usuario hace clic con el bot&amp;oacute;n derecho sobre una carpeta de su sistema y selecciona &lt;em&gt;Propiedades&lt;/em&gt;, le aparecer&amp;aacute; un cuadro de di&amp;aacute;logo similar al siguiente (en un sistema XP):&lt;/p&gt;
&lt;p&gt;&lt;img height="457" width="427" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Solo_5F00_lectura_5F00_XP.PNG" alt="Cuadro de di&amp;aacute;logo Propiedades de carpeta en Windows XP" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Como puede observar en la imagen, la casilla &lt;em&gt;S&amp;oacute;lo lectura&lt;/em&gt; tiene un aspecto particular: No est&amp;aacute; marcada, pues no aparece la t&amp;iacute;pica marca de verificaci&amp;oacute;n en el cuadrado blanco, ni tampoco est&amp;aacute; desmarcada, pues el color del cuadrado no es blanco sino verdoso. &amp;iquest;Qu&amp;eacute; significa esto? Esa casilla es una casilla de tipo triestado; es decir, hay tres posibles estados para esa casilla: &lt;em&gt;Marcada&lt;/em&gt;, &lt;em&gt;desmarcada&lt;/em&gt; e &lt;em&gt;indeterminada&lt;/em&gt;, que es el caso que nos ocupa. Si hace clic varias veces sobre la casilla &lt;em&gt;S&amp;oacute;lo lectura&lt;/em&gt; podr&amp;aacute; ver que va cambiando el estado de la misma. Sin embargo, pese a dejar la casilla en estado marcado y pulsar &lt;em&gt;Aceptar&lt;/em&gt;, al volver a abrir las propiedades de la carpeta la casilla vuelve al estado indeterminado.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Cu&amp;aacute;l es la causa de esto?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La causa de este comportamiento es que el atributo de s&amp;oacute;lo lectura no se puede cambiar, para carpetas, desde la interfaz de Windows. Microsoft tom&amp;oacute; esta decisi&amp;oacute;n porque el atributo de s&amp;oacute;lo lectura aplicado a carpetas tiene una sem&amp;aacute;ntica que nada tiene que ver con la del atributo de s&amp;oacute;lo lectura aplicado a ficheros. El atributo de s&amp;oacute;lo lectura aplicado a carpetas &amp;uacute;nicamente quiere decir que la carpeta es una carpeta personalizada (con un icono distintivo, con un fondo, etc.). &lt;/p&gt;
&lt;p&gt;Debe quedar claro que el atributo de s&amp;oacute;lo lectura aplicado a una carpeta no quiere decir que la carpeta no se pueda eliminar o cosas por el estilo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;Para qu&amp;eacute; est&amp;aacute; la casilla S&amp;oacute;lo lectura en las propiedades de una carpeta?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Est&amp;aacute; presente porque puede aplicarse a los ficheros que contenga esa carpeta. Si desmarca la casilla &lt;em&gt;S&amp;oacute;lo lectura&lt;/em&gt; en las propiedades de una carpeta y pulsa &lt;em&gt;Aceptar&lt;/em&gt;, lo que ocurre es que se quita el atributo de s&amp;oacute;lo lectura a todos los ficheros que contenga esa carpeta, si es que contiene alguno. De igual forma, si establece el estado de la casilla como marcado (con una marca de verificaci&amp;oacute;n en el cuadrado blanco) y pulsa &lt;em&gt;Aceptar&lt;/em&gt;, todos los ficheros de esa carpeta pasar&amp;aacute;n a tomar el atributo de s&amp;oacute;lo lectura.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Entonces, &amp;iquest;c&amp;oacute;mo cambiar el atributo de s&amp;oacute;lo lectura a una carpeta?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Como ha podido ver, Explorador de Windows no permite que el usuario cambie el atributo de s&amp;oacute;lo lectura a una carpeta. Esto se debe a que Microsoft no quiere que los usuarios &amp;quot;jueguen&amp;quot; con este atributo, lo que podr&amp;iacute;a suponer que se perdieran las personalizaciones de algunas carpetas del equipo, incluidas algunas carpetas de sistema importantes para Windows. As&amp;iacute; pues, si un usuario quiere &amp;quot;jugar&amp;quot; con el atributo de s&amp;oacute;lo lectura aplicado a una carpeta, debe hacerlo desde la l&amp;iacute;nea de comandos usando el comando Attrib.exe de un modo similar al siguiente:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;attrib +r &lt;em&gt;&amp;lt;Ruta_carpeta&amp;gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Esto aplicar&amp;iacute;a el atributo de s&amp;oacute;lo lectura a la carpeta indicada por &amp;lt;Ruta_carpeta&amp;gt;&lt;/p&gt;
&lt;p&gt;Similarmente, el comando&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;attrib -r &lt;em&gt;&amp;lt;Ruta_carpeta&amp;gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;desactivar&amp;iacute;a este atributo.&lt;/p&gt;
&lt;p&gt;Espero que este art&amp;iacute;culo sirva para aclarar de manera definitiva en qu&amp;eacute; consiste exactamente el atributo de s&amp;oacute;lo lectura cuando se aplica a una carpeta, por qu&amp;eacute; Explorador de Windows siempre muestra la casilla correspondiente como indeterminada, y qu&amp;eacute; ocurre cuando el usuario deja esa casilla en estado marcado o en estado desmarcado y pulsa sobre &lt;em&gt;Aceptar&lt;/em&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1693647" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category></item><item><title>"MMC no puede abrir el archivo". Cómo analizar el error</title><link>http://msmvps.com/blogs/dmartin/archive/2009/05/03/quot-mmc-no-puede-abrir-el-archivo-quot-c-243-mo-analizar-el-error.aspx</link><pubDate>Sun, 03 May 2009 14:28:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1691784</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1691784</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1691784</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/05/03/quot-mmc-no-puede-abrir-el-archivo-quot-c-243-mo-analizar-el-error.aspx#comments</comments><description>&lt;p&gt;Un problema que le ocurre a no poca gente que usa Windows XP consiste en que al intentar abrir un fichero con extensi&amp;oacute;n MSC (Services.msc, Diskmgmt.msc, etc.) el sistema muestra el siguiente mensaje de error:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;MMC no puede abrir el archivo C:\WINDOWS\system32\services.msc.&lt;/p&gt;
&lt;p&gt;Puede ser que el archivo no exista, no sea una consola de MMC o fue creado por una versi&amp;oacute;n m&amp;aacute;s reciente de MMC. Tambi&amp;eacute;n puede ser que no tiene suficientes derechos de acceso para abrir el archivo.&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;El propio mensaje nos explica las posibles causas del problema, pero ciertamente la informaci&amp;oacute;n que ofrece es algo vaga e inespec&amp;iacute;fica. El principal problema con el que se encuentra el usuario al recibir este mensaje de error es que, al tratarse de un mensaje de error gen&amp;eacute;rico, es posible que la causa del problema que est&amp;aacute; experimentando&amp;nbsp;no quede recogida en el texto del mensaje de error.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;iquest;C&amp;oacute;mo actuar en casos como este?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Hay muchas formas de actuar ante un mensaje de error de este estilo. Una manera consiste en observar si hay alg&amp;uacute;n tipo de LOG que registre informaci&amp;oacute;n detallada sobre el error (lo primero que debemos buscar es el c&amp;oacute;digo de error exacto). Es bastante probable que, de existir la posibilidad de registrar en un fichero LOG la informaci&amp;oacute;n correspondiente a un mensaje de error, esta opci&amp;oacute;n deba activarse expl&amp;iacute;citamente a trav&amp;eacute;s del registro del sistema operativo, o mediante alg&amp;uacute;n otro m&amp;eacute;todo avanzado similar. En ocasiones, como &amp;uacute;ltimo recurso para obtener informaci&amp;oacute;n detallada sobre un mensaje de error tendremos que instalar una versi&amp;oacute;n de depuraci&amp;oacute;n del sistema operativo o aplicaci&amp;oacute;n (versi&amp;oacute;n &lt;em&gt;checked&lt;/em&gt;). Las versiones &lt;em&gt;checked&lt;/em&gt; son versiones que incorporan informaci&amp;oacute;n detallada de depuraci&amp;oacute;n (trazas, aserciones, etc.) que son de mucha utilidad a los programadores de aplicaciones. De hecho, para adquirir la versi&amp;oacute;n &lt;em&gt;checked&lt;/em&gt; de un sistema operativo de Microsoft debe ser suscriptor de MSDN. Las versiones de depuraci&amp;oacute;n de los Service Packs s&amp;iacute; est&amp;aacute;n disponibles p&amp;uacute;blicamente desde el Centro de descargas de Microsoft. Por ejemplo, &lt;a target="_blank" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=D811F258-C95F-479A-BDF1-0D1154D700A5&amp;amp;displaylang=en"&gt;este&lt;/a&gt; es el enlace para descargar la versi&amp;oacute;n de depuraci&amp;oacute;n del SP3 de Windows XP.&lt;/p&gt;
&lt;p&gt;En este art&amp;iacute;culo se va a describir un m&amp;eacute;todo menos complicado que puede sacarnos del atolladero en bastantes casos. De hecho, nos va a sacar del atolladero en el problema concreto que se describe m&amp;aacute;s arriba.&lt;/p&gt;
&lt;p&gt;En primer lugar, instale la &amp;uacute;ltima versi&amp;oacute;n de Debugging Tools for Windows y configure el depurador Windbg apropiadamente. Para saber c&amp;oacute;mo hacer esto, siga los pasos de &lt;a target="_blank" href="http://msmvps.com/blogs/dmartin/archive/2009/04/04/tutorial-sobre-windbg-parte-i.aspx"&gt;este&lt;/a&gt; tutorial.&lt;/p&gt;
&lt;p&gt;A continuaci&amp;oacute;n, vamos a ejecutar la aplicaci&amp;oacute;n desde dentro del depurador. Para ello, haga clic sobre &lt;em&gt;File&lt;/em&gt;, &lt;em&gt;Open Executable&lt;/em&gt;. En la caja de texto &lt;em&gt;Nombre&lt;/em&gt;, escriba lo siguiente: &lt;em&gt;%SystemRoot%\system32\mmc.exe&lt;/em&gt; En la caja de texto &lt;em&gt;Arguments&lt;/em&gt;, escriba lo siguiente: &lt;em&gt;Services.msc&lt;/em&gt; (o el nombre del fichero MSC que no es capaz de abrir). Pulse &lt;em&gt;Abrir&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Aseg&amp;uacute;rese de que Windbg le informe de que la informaci&amp;oacute;n sobre los s&amp;iacute;mbolos es correcta y pulse F5 (Go).&lt;/p&gt;
&lt;p&gt;Cuando se muestre el mensaje de error en pantalla, active la ventana de Windbg y pulse Ctrl+Pausa o haga clic sobre &lt;em&gt;Debug&lt;/em&gt;, &lt;em&gt;Break&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Ahora tendr&amp;aacute; que examinar la pila de ejecuci&amp;oacute;n de todos y cada uno de los hilos activos de la aplicaci&amp;oacute;n para ver si encuentra el c&amp;oacute;digo de error como&amp;nbsp;par&amp;aacute;metro de alguna de&amp;nbsp;las funciones que all&amp;iacute; aparezcan. Para cambiar de hilo, puede hacerlo&amp;nbsp;gr&amp;aacute;ficamente desde el men&amp;uacute; &lt;em&gt;View&lt;/em&gt;, &lt;em&gt;Processes and Threads&lt;/em&gt;. Seleccione con un simple clic el hilo que quiera examinar (quedar&amp;aacute; marcado en negrita) e introduzca en la caja de texto de Windbg el comando &lt;em&gt;kb&lt;/em&gt; para mostrar la pila de ejecuci&amp;oacute;n. En mi caso, esta es la pila de ejecuci&amp;oacute;n del hilo responsable de abrir el fichero MSC:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;0:000&amp;gt; kb&lt;br /&gt;ChildEBP RetAddr&amp;nbsp; Args to Child&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;0007f030 7c91df4a 7c809590 00000002 0007f05c ntdll!KiFastSystemCallRet&lt;br /&gt;0007f034 7c809590 00000002 0007f05c 00000001 ntdll!ZwWaitForMultipleObjects+0xc&lt;br /&gt;0007f0d0 7e3995f9 00000002 0007f0f8 00000000 kernel32!WaitForMultipleObjectsEx+0x12c&lt;br /&gt;0007f12c 6c6d4b52 00000001 0007f160 ffffffff USER32!RealMsgWaitForMultipleObjectsEx+0x13e&lt;br /&gt;0007f14c 6c6d4cbd 000024ff ffffffff 00000000 DUSER!CoreSC::Wait+0x3a&lt;br /&gt;0007f170 6c6d4eb9 000024ff 00000000 0007f19c DUSER!CoreSC::WaitMessage+0x40&lt;br /&gt;0007f180 7e3d8e33 000024ff 00000000 00000064 DUSER!MphWaitMessageEx+0x22&lt;br /&gt;0007f19c 7c91e473 0007f1ac 00000008 000024ff USER32!__ClientWaitMessageExMPH+0x1e&lt;br /&gt;0007f1b0 7e399418 7e3a770a 00000000 00000000 ntdll!KiUserCallbackDispatcher+0x13&lt;br /&gt;0007f1e8 7e3a49c4 000301b4 00000000 00000001 USER32!NtUserWaitMessage+0xc&lt;br /&gt;0007f210 7e3ba956 7e390000 000c44f8 00000000 USER32!InternalDialogBox+0xd0&lt;br /&gt;0007f4d0 7e3ba2bc 0007f62c 00000001 00000000 USER32!SoftModalMessageBox+0x938&lt;br /&gt;0007f620 7e3e63fd 0007f62c 00000028 00000000 USER32!MessageBoxWorker+0x2ba&lt;br /&gt;0007f678 7e3d0853 00000000 00e76008 00bafeb0 USER32!MessageBoxTimeoutW+0x7a&lt;br /&gt;0007f698 7e3e6579 00000000 00e76008 00bafeb0 USER32!MessageBoxExW+0x1b&lt;br /&gt;0007f6b4 4754f5fe 00000000 00e76008 00bafeb0 USER32!MessageBoxW+0x45&lt;br /&gt;0007f6f0 0107a216 00e76008 00002010 00e86458 mmcbase!MMCErrorBox+0x7f&lt;br /&gt;0007f740 01058ce9 00000003 &lt;strong&gt;80040154&lt;/strong&gt; 00000000 mmc!DisplayFileOpenError+0x191&lt;br /&gt;0007f794 0104093c 0007f748 00000004 00e6e018 mmc!CAMCDoc::OnOpenDocument+0x90&lt;br /&gt;0007f7e0 5f81424a 0007fc14 00000001 00038988 mmc!CAMCMultiDocTemplate::OpenDocumentFile+0x21f&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Marcada en negrita est&amp;aacute; la parte importante de la traza, el error en cuesti&amp;oacute;n (0x80040154). &amp;iquest;Qu&amp;eacute; quiere decir ese c&amp;oacute;digo de error? El propio Windbg nos lo puede decir:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;0:001&amp;gt; !error 80040154&lt;br /&gt;Error code: (HRESULT) 0x80040154 (2147746132) - Clase no registrada&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Un error de clase no registrada. Para sab&amp;eacute;r qu&amp;eacute; clase es la afectada, puede usar Process Monitor (&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx"&gt;http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx&lt;/a&gt;), monitorizar el sistema mientras intenta volver a abrir el archivo MSC y analizar con calma los resultados NOT FOUND que hagan referencia al Registro del sistema, o bien puede seguir las pautas de &lt;a target="_blank" href="http://msmvps.com/blogs/dmartin/archive/2008/08/04/problemas-con-la-inicializaci-243-n-de-explorer-exe.aspx"&gt;este&lt;/a&gt; art&amp;iacute;culo referido a Explorer.exe.&lt;/p&gt;
&lt;p&gt;Para no hacerle perder el tiempo, le dir&amp;eacute; que en este caso la clase afectada est&amp;aacute; en la librer&amp;iacute;a Msxml3.dll y se puede volver a registrar con el comando &lt;em&gt;regsvr32 msxml3.dll&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Otro c&amp;oacute;digo de error que se puede encontrar es el c&amp;oacute;digo 0x2 (archivo no encontrado). En este caso lo ideal es hacer uso de Process Monitor (&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx"&gt;http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx&lt;/a&gt;), monitorizar el sistema mientras intenta volver a abrir el archivo MSC y analizar con calma los resultados NOT FOUND que hagan referencia, en esta ocasi&amp;oacute;n, al sistema de archivos. Un caso que he analizado ten&amp;iacute;a como culpable al virus Vundo, aunque en general podr&amp;iacute;a tratarse de cualquier otro tipo de &lt;em&gt;malware&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Una duda que quiz&amp;aacute; tenga es, &amp;iquest;c&amp;oacute;mo distinguir en la salida del comando &lt;em&gt;kb&lt;/em&gt; lo que es un c&amp;oacute;digo de error de lo que no? En general yo suelo descartar en primer lugar lo que seguro s&amp;eacute; que no es un c&amp;oacute;digo de error. Por ejemplo, en la traza de pila del ejemplo puede ver que 7e3a770a es un valor que est&amp;aacute; cerca de las direcciones de retorno de cada una de las funciones, por lo que probablemente no&amp;nbsp;sea un c&amp;oacute;digo de error. Los valores 00bafeb0 y similares, es decir, un n&amp;uacute;mero hexadecimal no muy alto, suelen ser punteros a estructuras de datos, por lo que tampoco suelen ser c&amp;oacute;digos de error. Los valores muy bajos (00000002), o que comiencen por 8 (80040154), s&amp;iacute; suelen ser c&amp;oacute;digos de error. Por supuesto, en este caso el nombre de la funci&amp;oacute;n mmc!DisplayFileOpenError+0x191, nos da la pista fundamental.&lt;/p&gt;
&lt;p&gt;Espero que este art&amp;iacute;culo les ayude a investigar a fondo los mensajes de error en Windows en los que no aparece de manera expl&amp;iacute;cita el c&amp;oacute;digo de error. En futuros art&amp;iacute;culos ver&amp;aacute; c&amp;oacute;mo atacar un problema similar pero esta vez&amp;nbsp;causado por una excepci&amp;oacute;n de aplicaci&amp;oacute;n, o bien por una versi&amp;oacute;n incompatible de una DLL en el sistema, usando para ello la aplicaci&amp;oacute;n Dependency Walker.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1691784" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consejos/default.aspx">Consejos</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Debugging/default.aspx">Debugging</category></item><item><title>¿Internet Explorer se cuelga con frecuencia?</title><link>http://msmvps.com/blogs/dmartin/archive/2009/02/16/191-internet-explorer-se-cuelga-con-frecuencia.aspx</link><pubDate>Mon, 16 Feb 2009 23:54:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1672654</guid><dc:creator>dmartin</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1672654</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1672654</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/02/16/191-internet-explorer-se-cuelga-con-frecuencia.aspx#comments</comments><description>&lt;p&gt;Aunque Internet Explorer no sea algo que conozca en profundidad, &amp;uacute;ltimamente mucha gente me ha estado enviando mensajes indicando que su navegador se bloquea a menudo. He estado analizando por encima el volcado de memoria de un sistema afectado y al parecer el complemento Adobe Flash es el presunto culpable. De hecho, desactivando dicho complemento en IE, desde &lt;em&gt;Herramientas&lt;/em&gt;, &lt;em&gt;Administrar complementos&lt;/em&gt;, se ha solucionado el 100% de los casos que he tratado. Otra sugerencia que ha resultado &amp;uacute;til consiste en desinstalar la versi&amp;oacute;n 10 de Adobe Flash y a continuaci&amp;oacute;n instalar la versi&amp;oacute;n 9. As&amp;iacute; que si ha llegado a esta p&amp;aacute;gina buscando informaci&amp;oacute;n sobre un cuelgue de Internet Explorer, espero que esta informaci&amp;oacute;n le resulte &amp;uacute;til.&lt;/p&gt;
&lt;p&gt;Buscando en la web de Adobe, he visto que se trata de un posible &lt;em&gt;bug&lt;/em&gt; que ya est&amp;aacute; siendo analizado, pero a&amp;uacute;n no hay soluci&amp;oacute;n: &lt;a href="http://bugs.adobe.com/jira/browse/FP-1145"&gt;http://bugs.adobe.com/jira/browse/FP-1145&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Si conoce alguna web con contenido Flash que haga que el navegador se cuelgue con frecuencia, o si ha logrado obtener unos pasos que reproduzcan el problema de manera consistente, le agradecer&amp;iacute;a que contactara conmigo ya sea a trav&amp;eacute;s de la secci&amp;oacute;n de comentarios de esta entrada o a trav&amp;eacute;s de la p&amp;aacute;gina &lt;em&gt;Contact&lt;/em&gt; de la parte izquierda de este &lt;em&gt;blog&lt;/em&gt;. Gracias de antemano.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Actualizaci&amp;oacute;n 25/02/2009:&lt;/strong&gt; Gracias a todos por la informaci&amp;oacute;n. El problema ya est&amp;aacute; solucionado en la nueva versi&amp;oacute;n de Adobe Flash Player que se puede descargar desde &lt;a href="http://www.get.adobe.com/flashplayer"&gt;http://get.adobe.com/flashplayer&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1672654" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Internet+Explorer/default.aspx">Internet Explorer</category></item><item><title>El caso de la instalación fallida de IIS en Windows Vista</title><link>http://msmvps.com/blogs/dmartin/archive/2009/01/07/el-caso-de-la-instalaci-243-n-fallida-de-iis-en-windows-vista.aspx</link><pubDate>Wed, 07 Jan 2009 16:11:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1658779</guid><dc:creator>dmartin</dc:creator><slash:comments>16</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1658779</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1658779</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2009/01/07/el-caso-de-la-instalaci-243-n-fallida-de-iis-en-windows-vista.aspx#comments</comments><description>&lt;p&gt;El caso de hoy es el de un sistema Windows Vista en el que no era posible instalar el componente IIS (&lt;em&gt;Internet Information Server&lt;/em&gt;), que sirve para publicar p&amp;aacute;ginas web tanto local como remotamente y es un requisito previo a la instalaci&amp;oacute;n de alg&amp;uacute;n que otro programa, como por ejemplo &lt;a target="_blank" href="http://www.microsoft.com/windowsserversystem/virtualserver/"&gt;Virtual Server&lt;/a&gt;. Para instalar componentes opcionales en Vista, como sabr&amp;aacute;, hay que ir a Panel de control, Programas, Instalar o desinstalar componentes de Windows. &lt;/p&gt;
&lt;p&gt;El mensaje de error que aparec&amp;iacute;a era el siguiente:&lt;/p&gt;
&lt;p&gt;&lt;img height="127" width="457" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Error_5F00_Componentes.PNG" alt="Mensaje de error al intentar instalar IIS" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Una de las&amp;nbsp;primeras cosas&amp;nbsp;que hay que examinar cuando hay problemas para instalar un componente de Windows, un paquete de idiomas, una actualizaci&amp;oacute;n, un Service Pack, etc. es el fichero C:\Windows\Logs\CBS\CBS.log. Es posible que el registro sea bastante extenso y por ello se haya creado un fichero CBS.persist.log con las entradas m&amp;aacute;s antiguas. En tal caso, es posible que tengamos que examinar este fichero tambi&amp;eacute;n.&lt;/p&gt;
&lt;p&gt;Buscando en el fichero de abajo hacia arriba, encontr&amp;eacute; el error que probablemente estaba abortando la instalaci&amp;oacute;n:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;2008-12-23 11:57:34, Error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CSI&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="mailto:00000012@2008/12/23:10:57:34.500"&gt;00000012@2008/12/23:10:57:34.500&lt;/a&gt; (F) d:\rtm\base\wcp\sil\silp.h(2661): Error STATUS_INVALID_PARAMETER originated in function Windows::Rtl::SystemImplementation::CFile_IRtlFileTearoff::SetAttributes expression: Valid flags check failed: Attributes&lt;br /&gt;[gle=0x80004005]&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Estas l&amp;iacute;neas quieren decir que ha fallado la comprobaci&amp;oacute;n&amp;nbsp;de par&amp;aacute;metros de una funci&amp;oacute;n del servicio de componentes de Vista. Concretamente la funci&amp;oacute;n es SetAttributes, que probablemente tenga como objetivo aplicar ciertos atributos sobre un fichero. La parte &amp;quot;[gle=0x80004005]&amp;quot;&amp;nbsp;(&lt;em&gt;gle&lt;/em&gt; es la funci&amp;oacute;n &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ms679360(VS.85).aspx"&gt;GetLastError&lt;/a&gt;) quiere decir que el &amp;uacute;ltimo error surgido durante la ejecuci&amp;oacute;n de dicha funci&amp;oacute;n es un error HRESULT que b&amp;aacute;sicamente quiere decir que el error es inespec&amp;iacute;fico. Obviamente necesitaba informaci&amp;oacute;n mucho m&amp;aacute;s &amp;uacute;til, as&amp;iacute; que examin&amp;eacute; el reporte a partir de ese&amp;nbsp;punto y me encontr&amp;eacute; con esta l&amp;iacute;nea, mucho m&amp;aacute;s interesante:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;2008-12-23 11:57:34, Error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CSI&amp;nbsp;&amp;nbsp;&amp;nbsp; 00000011 (F) STATUS_INVALID_PARAMETER #3228437# from Windows::Rtl::SystemImplementation::CFile_IRtlFileTearoff::SetAttributes(Attributes = 2048 (0x00000800))[gle=0xd000000d]&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;El error 0xd000000d&amp;nbsp;quiere decir STATUS_INVALID_PARAMETER pero, &amp;iquest;qu&amp;eacute; atributos se le estaba pasando a la funci&amp;oacute;n? El valor Attributes = 2048 (0x800 en hexadecimal) nos da la clave. Una b&amp;uacute;squeda en el fichero Winddk.h del DDK de Windows devolvi&amp;oacute; el siguiente resultado:&lt;/p&gt;
&lt;p&gt;#define FILE_ATTRIBUTE_COMPRESSED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00000800&lt;/p&gt;
&lt;p&gt;Como ve, el atributo que se estaba pasando es el atributo comprimido. La compresi&amp;oacute;n de ficheros es una caracter&amp;iacute;stica del sistema de ficheros NTFS y no tiene nada que ver con los archivos .zip o .rar. Ya estaba cerca de desvelar el misterio,&amp;nbsp;pero para poder aplicar una soluci&amp;oacute;n necesitaba saber qu&amp;eacute; fichero o ficheros estaban involucrados en el error.&amp;nbsp;Observando minuciosamente&amp;nbsp;el fichero CBS.log me&amp;nbsp;encontr&amp;eacute; con esa informaci&amp;oacute;n:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;2008-12-23 11:57:49, Info&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CSI&amp;nbsp;&amp;nbsp;&amp;nbsp; 00000013 Error STATUS_INVALID_PARAMETER while executing operation SetFileInformation on [l:138{69}]&amp;quot;\??\C:\Windows\System32\inetsrv\config\schema\FX_schema.xml, N/A, N/A&amp;quot;&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Hay que tener en cuenta que el fichero FX_schema.xml no hab&amp;iacute;a sido servido a&amp;uacute;n al directorio C:\Windows\System32\inetsrv\config\schema\ (directorio de instalaci&amp;oacute;n de IIS), pues la instalaci&amp;oacute;n no pudo completarse, por lo que le indiqu&amp;eacute; al usuario que acudiera al almac&amp;eacute;n de componentes (C:\Windows\winsxs) y buscara all&amp;iacute;&amp;nbsp;el componente que contuviera ese fichero FX_schema.xml.&amp;nbsp;El usuario&amp;nbsp;me inform&amp;oacute; de dos resultados:&lt;/p&gt;
&lt;p&gt;amd64_microsoft-windows-iis-sharedlibraries_31bf3856ad364e35_6.0.6000.16386_none_6ad14c4c7044b7ae (estaba sin comprimir)&lt;br /&gt;amd64_microsoft-windows-iis-sharedlibraries_31bf3856ad364e35_6.0.6001.18000_none_6d080e486d2fc882&amp;nbsp;(comprimido, es decir, en color azul).&lt;/p&gt;
&lt;p&gt;El primer resultado es el componente instalado por la versi&amp;oacute;n RTM de Windows Vista; el segundo es el instalado por el Service Pack 1.&lt;/p&gt;
&lt;p&gt;As&amp;iacute; pues, el usuario descomprimi&amp;oacute; la segunda carpeta desde el panel de propiedades, bot&amp;oacute;n Opciones avanzadas, y ya pudo instalar IIS.&lt;/p&gt;
&lt;p&gt;&amp;iquest;Por qu&amp;eacute; estaba comprimida esa carpeta? Ciertamente lo desconozco, pero mi opini&amp;oacute;n es que alg&amp;uacute;n software o el propio usuario lo hizo con el objetivo de ahorrar espacio en disco debido al elevado espacio en disco consumido por el directorio C:\Windows\winsxs en Windows Vista.&amp;nbsp;Como puede leer en &lt;a target="_blank" href="http://blogs.msdn.com/e7/archive/2008/11/19/disk-space.aspx"&gt;este blog&lt;/a&gt; del equipo de Windows, el espacio realmente ocupado es mucho menor y, como ya pudo comprobar,&amp;nbsp;comprimirlo puede tener como consecuencia no poder instalar un componente de Windows.&lt;/p&gt;
&lt;p&gt;&amp;iexcl;Caso cerrado!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Actualizaci&amp;oacute;n (27 de octubre de 2009):&lt;/strong&gt; En seg&amp;uacute;n qu&amp;eacute; casos, puede ser que necesitemos echar un vistazo tambi&amp;eacute;n al fichero de reporte espec&amp;iacute;fico de IIS, a saber, %windir%\iis.log.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1658779" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Component-Based+Servicing+_2800_CBS_2900_/default.aspx">Component-Based Servicing (CBS)</category></item><item><title>¿Cómo agrupar de manera lógica el contenido de una carpeta?</title><link>http://msmvps.com/blogs/dmartin/archive/2008/12/05/191-c-243-mo-agrupar-de-manera-l-243-gica-el-contenido-de-una-carpeta.aspx</link><pubDate>Fri, 05 Dec 2008 22:50:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1655935</guid><dc:creator>dmartin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1655935</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1655935</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/12/05/191-c-243-mo-agrupar-de-manera-l-243-gica-el-contenido-de-una-carpeta.aspx#comments</comments><description>&lt;p&gt;El art&amp;iacute;culo de hoy trata de una consulta bastante interesante sobre Windows XP que he recibido. En resumen, el usuario preguntaba si es posible organizar el contenido de una carpeta usando apartados, de manera similar a como est&amp;aacute; organizado por defecto Mi PC. En este art&amp;iacute;culo describo algunas alternativas para lograr esto.&lt;/p&gt;
&lt;p&gt;La opci&amp;oacute;n para organizar el contenido de una carpeta en apartados est&amp;aacute; presente en&amp;nbsp;el men&amp;uacute; &lt;em&gt;Ver&lt;/em&gt;, &lt;em&gt;Organizar iconos&lt;/em&gt;, &lt;em&gt;Organizar en grupos&lt;/em&gt;. El criterio que se emplee para agrupar se establece tambi&amp;eacute;n desde dicho submen&amp;uacute; y puede incluir el nombre, el tipo, el tama&amp;ntilde;o total, etc. Cabe destacar que&amp;nbsp;existe una serie de par&amp;aacute;metros adicionales en el men&amp;uacute; &lt;em&gt;Ver&lt;/em&gt;, &lt;em&gt;Seleccionar detalles&lt;/em&gt;. Simplemente marque las casillas correspondientes a los par&amp;aacute;metros que desee a&amp;ntilde;adir y ya estar&amp;aacute;n disponibles para ser seleccionados desde el submen&amp;uacute; &lt;em&gt;Organizar iconos&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Quiz&amp;aacute; el atributo m&amp;aacute;s flexible sea el atributo &lt;em&gt;Comentarios&lt;/em&gt;, que permite a&amp;ntilde;adir un texto emergente a una carpeta. &amp;iquest;C&amp;oacute;mo se a&amp;ntilde;ade dicho texto? Debe crear (o modificar) un fichero oculto y de sistema con el nombre Desktop.ini que tenga, como m&amp;iacute;nimo, este contenido:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;[.ShellClassInfo] &lt;br /&gt;InfoTip=Mi comentario&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Para que Explorador de Windows tenga en cuenta esta personalizaci&amp;oacute;n, la carpeta debe tener aplicado el atributo de solo lectura (o de sistema). El comando Attrib.exe logra esto a trav&amp;eacute;s de las sintaxis, respectivamente:&lt;/p&gt;
&lt;p&gt;attrib +r NombreCarpeta&lt;/p&gt;
&lt;p&gt;attrib +s NombreCarpeta&lt;/p&gt;
&lt;p&gt;&amp;iquest;Qu&amp;eacute; ocurre si ninguna de las opciones del cuadro &lt;em&gt;Seleccionar detalles&lt;/em&gt; nos convence?&amp;nbsp;Es posible que queramos a&amp;ntilde;adir informaci&amp;oacute;n relativa a la propia&amp;nbsp;carpeta, como su tama&amp;ntilde;o, por ejemplo. Para ello podemos crear una extensi&amp;oacute;n de &lt;em&gt;shell&lt;/em&gt;, concretamente del tipo &lt;em&gt;column handler&lt;/em&gt; (manejador de columna). Windows no&amp;nbsp;incluye ninguna columna que muestre el tama&amp;ntilde;o de una carpeta, ya que dicho c&amp;oacute;mputo es una tarea costosa, sobre todo si la carpeta reside en un servidor remoto. Sin embargo, s&amp;iacute; existen en la red manejadores de columnas de terceros, por lo que en principio ser&amp;iacute;a posible agrupar carpetas seg&amp;uacute;n su tama&amp;ntilde;o. Una de estas herramientas es &lt;a target="_blank" href="http://foldersize.sourceforge.net/about.html"&gt;Folder Size for Windows&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Si se animara a desarrollar manejadores de columnas, le recomiendo echar un vistazo a la documentaci&amp;oacute;n presente en el sitio web de MSDN: &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/bb776831(VS.85).aspx"&gt;Creating Column Handlers&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1655935" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category></item><item><title>Cómo analizar el rendimiento del arranque/apagado de Windows Vista</title><link>http://msmvps.com/blogs/dmartin/archive/2008/10/09/analizar-el-rendimiento-del-arranque-apagado-hibernaci-243-n-en-windows-vista.aspx</link><pubDate>Thu, 09 Oct 2008 20:06:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1650375</guid><dc:creator>dmartin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1650375</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1650375</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/10/09/analizar-el-rendimiento-del-arranque-apagado-hibernaci-243-n-en-windows-vista.aspx#comments</comments><description>&lt;p&gt;Una de los quejas que m&amp;aacute;s&amp;nbsp;se ven&amp;nbsp;en los foros de Windows Vista&amp;nbsp;es la siguiente:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;El sistema arranca/apaga/hiberna muy lentamente. Cuando inicio sesi&amp;oacute;n tengo que esperar un mont&amp;oacute;n de tiempo hasta que finalmente se apaga la luz del disco duro y puedo trabajar.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Como cada persona tiene su propia idea de lo que es &amp;quot;lento&amp;quot; y, ciertamente, es dif&amp;iacute;cil describir de manera precisa en qu&amp;eacute; fase concreta del arranque se consume una mayor cantidad de tiempo, lo que suelo indicar es que se utilice la infraestructura ETW (&lt;em&gt;Event Tracing for Windows&lt;/em&gt;) de Windows Vista para generar una traza detallada del arranque/apagado/hibernaci&amp;oacute;n para as&amp;iacute; determinar la causa del problema. Concretamente, la herramienta Xbootmgr&amp;nbsp;(&lt;a href="http://www.microsoft.com/whdc/system/sysperf/perftools.mspx"&gt;http://www.microsoft.com/whdc/system/sysperf/perftools.mspx&lt;/a&gt;), parte del&amp;nbsp;kit de herramientas&amp;nbsp;Windows Performance,&amp;nbsp;se apoya en la infraestructura ETW para generar una traza detallada del apagado, inicio, suspensi&amp;oacute;n e hibernaci&amp;oacute;n del equipo. &lt;/p&gt;
&lt;p&gt;Una vez instalado el software,&amp;nbsp;vamos a usar la herramienta Xbootmgr para generar una traza del arranque, por ejemplo. Antes de comenzar la prueba, es recomendable que:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No use el sistema durante la prueba, para que la medici&amp;oacute;n sea lo m&amp;aacute;s precisa posible.&lt;/li&gt;
&lt;li&gt;Desconecte toda conexi&amp;oacute;n de red, unidad de red, etc. que tenga en el equipo.&lt;/li&gt;
&lt;li&gt;Configure el sistema para iniciar sesi&amp;oacute;n&amp;nbsp;autom&amp;aacute;ticamente. Para ello, puede usar la powertoy &lt;a target="_blank" href="http://shellrevealed.com/files/folders/code/entry4411.aspx"&gt;Autologon&lt;/a&gt; de Windows Vista.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La sintaxis ser&amp;iacute;a:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;xbootmgr -trace boot -numRuns&amp;nbsp;2 -resultPath %systemdrive%\traces -prepSystem -traceflags base&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;El valor &lt;em&gt;boot&lt;/em&gt; del par&amp;aacute;metro -trace indica que queremos trazar el arranque del equipo. Podr&amp;iacute;amos poner &lt;em&gt;shutdown&lt;/em&gt; y estar&amp;iacute;amos trazando el apagado del equipo.&lt;/p&gt;
&lt;p&gt;El valor &lt;em&gt;2&lt;/em&gt; del par&amp;aacute;metro -numRuns indica que queremos realizar 2 trazas consecutivas.&lt;/p&gt;
&lt;p&gt;El par&amp;aacute;metro -prepSystem implica que se realizar&amp;aacute; un par de arranques &amp;quot;preparatorios&amp;quot; antes de la prueba en s&amp;iacute;.&lt;/p&gt;
&lt;p&gt;Una vez ejecutado el comando anterior, el sistema informar&amp;aacute; de que se va a reiniciar autom&amp;aacute;ticamente.&amp;nbsp;Cuando finalice&amp;nbsp;la traza, ver&amp;aacute; que en el directorio que haya indicado tras el par&amp;aacute;metro -resultPath se ha creado un fichero con extensi&amp;oacute;n .etl. Para extraer un resumen de la informaci&amp;oacute;n de ese fichero en formato XML, puede usar la utilidad Xperf del siguiente modo:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;xperf -i traza.etl -o resumen.xml -a boot&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;(Donde &amp;quot;traza.etl&amp;quot; es la traza que se ha obtenido como resultado del comando Xbootmgr).&lt;/p&gt;
&lt;p&gt;Al abrir el fichero Resumen.xml encontrar&amp;aacute; un resumen de cada una de las fases de arranque as&amp;iacute; como los correspondientes tiempos de ejecuci&amp;oacute;n, entre otros datos.&amp;nbsp;Es bastante m&amp;aacute;s intuitivo mostrar la informaci&amp;oacute;n de una manera gr&amp;aacute;fica. Para ello, simplemente ejecute el siguiente comando:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;xperf traza.etl&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Se abrir&amp;aacute; la herramienta Windows Performance Analyzer y mostrar&amp;aacute; la informaci&amp;oacute;n de la traza de manera gr&amp;aacute;fica. La siguiente captura de pantalla muestra una parte de la informaci&amp;oacute;n mostrada en un sistema:&lt;/p&gt;
&lt;p&gt;&lt;img width="608" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/WPA.PNG" alt="Gr&amp;aacute;ficas producidas por Windows Performance Analyzer" height="636" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;En la parte superior se puede ver un diagrama temporal de los procesos del sistema operativo, es decir,&amp;nbsp;en qu&amp;eacute; momento &amp;quot;nacen&amp;quot; y en qu&amp;eacute; momento finalizan. En la parte inferior aparece el concepto &amp;quot;hard faults&amp;quot;, que hace referencia a todos aquellos fallos de p&amp;aacute;gina que han requerido una operaci&amp;oacute;n de E/S hacia el disco. Como esto es una operaci&amp;oacute;n costosa (varios&amp;nbsp;&amp;oacute;rdenes de&amp;nbsp;magnitud m&amp;aacute;s lenta que el acceso a memoria principal), toda herramienta que analice el rendimiento de un sistema suele proporcionar este dato. Es normal que en las etapas iniciales del arranque se produzca un gran n&amp;uacute;mero de fallos de p&amp;aacute;gina. Windows Performance Analyzer permite mostrar gr&amp;aacute;ficas adicionales&amp;nbsp;tales como el consumo de CPU por proceso, E/S por proceso, etc. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;En general, &amp;iquest;qu&amp;eacute; produce un inicio lento?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Suponiendo dos m&amp;aacute;quinas iguales o parecidas en lo que a hardware se refiere (hardware que cumpla los requisitos recomendados de Windows Vista), el que una de ellas arranque mucho m&amp;aacute;s lentamente que la otra puede deberse a:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Controladores de arranque sin una firma digital embebida. Esto supone que Windows Vista debe ir al cat&amp;aacute;logo (%windir%\catroot) a buscar la correspondiente firma digital, demor&amp;aacute;ndose la carga del controlador.&lt;/li&gt;
&lt;li&gt;Controladores que responden lentamente a los eventos generados por el administrador Plug and Play de Windows. Concretamente, el cuello de botella suele encontrarse a la hora de manejar la IRP IRP_MN_START_DEVICE. Tiene informaci&amp;oacute;n sobre la misma en el sitio web de &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ms806454.aspx"&gt;MSDN&lt;/a&gt;. Como se comenta en la propia documentaci&amp;oacute;n, los controladores deber&amp;iacute;an devolver el resultado STATUS_PENDING&amp;nbsp;y&amp;nbsp;posponer el tratamiento de la IRP para as&amp;iacute; no perjudicar excesivamente el tiempo de arranque del sistema.&lt;/li&gt;
&lt;li&gt;Un controlador de v&amp;iacute;deo que tarda mucho tiempo en inicializarse.&lt;/li&gt;
&lt;li&gt;Conexiones de red persistentes (una unidad de red,&amp;nbsp;por ejemplo) que tardan en responder mucho tiempo.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Scripts&lt;/em&gt; de inicio impuestos mediante directivas (esto es m&amp;aacute;s com&amp;uacute;n en un dominio).&lt;/li&gt;
&lt;li&gt;Servicios que tardan demasiado&amp;nbsp;en iniciarse.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si interpretando la informaci&amp;oacute;n de la traza determinase que es en la fase final del arranque en la que se consume m&amp;aacute;s tiempo, quiz&amp;aacute; desee desactivar servicios u otros elementos que arrancan junto con Windows. Para ello&amp;nbsp;lo ideal es que haga uso de la herramienta &lt;a target="_blank" href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx"&gt;Autoruns&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;En resumen, el arranque y apagado del sistema operativo son dos procesos complejos (especialmente el primero) formados por una serie de fases bien diferenciadas. Interpretando la informaci&amp;oacute;n proporcionada por las herramientas Xbootmgr y Xperf podr&amp;aacute; comprender mejor qu&amp;eacute; es&amp;nbsp;lo que ocurre cuando arranca o&amp;nbsp;apaga su&amp;nbsp;sistema y ser&amp;aacute; capaz de detectar los cuellos de botella que tantos segundos de nuestro preciado tiempo nos roban cada vez que ponemos en funcionamiento nuestra m&amp;aacute;quina.&lt;/p&gt;
&lt;p&gt;Por supuesto, si&amp;nbsp;necesitara ayuda para interpretar los resultados de alguna traza, puede plantear su pregunta en los comentarios de esta entrada.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1650375" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Rendimiento/default.aspx">Rendimiento</category></item><item><title>Problemas con la inicialización de Explorer.exe (II)</title><link>http://msmvps.com/blogs/dmartin/archive/2008/09/17/problemas-con-la-inicializaci-243-n-de-explorer-exe-ii.aspx</link><pubDate>Wed, 17 Sep 2008 21:07:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1648116</guid><dc:creator>dmartin</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1648116</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1648116</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/09/17/problemas-con-la-inicializaci-243-n-de-explorer-exe-ii.aspx#comments</comments><description>&lt;p&gt;Completando &lt;a target="_blank" href="http://msmvps.com/blogs/dmartin/archive/2008/08/04/problemas-con-la-inicializaci-243-n-de-explorer-exe.aspx"&gt;mi art&amp;iacute;culo anterior&lt;/a&gt; sobre problemas durante la inicializaci&amp;oacute;n de Explorer.exe, este art&amp;iacute;culo se centrar&amp;aacute; en otra posible causa del problema: una infecci&amp;oacute;n de virus.&lt;/p&gt;
&lt;p&gt;Es posible que&amp;nbsp;se encuentre con&amp;nbsp;un sistema con los siguientes s&amp;iacute;ntomas: Al iniciar el sistema, no aparece ni el escritorio ni la barra de tareas. Al abrir Administrador de tareas, hacer clic sobre Archivo, Nueva tarea y tratar de ejecutar Explorer.exe no ocurre nada, al menos aparentemente. Digo aparentemente porque es posible que un virus haya modificado el registro de tal forma que al intentar ejecutar Explorer.exe se est&amp;eacute; ejecutando un componente malicioso del virus. Este art&amp;iacute;culo tratar&amp;aacute; una posible v&amp;iacute;a de infecci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;La clave de registro Image File Execution Options&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;En mi anterior &lt;em&gt;blog&lt;/em&gt; tengo &lt;a target="_blank" href="http://rinconwindows.blogspot.com/2007/06/cmo-funciona-el-motor-de-compatibilidad.html"&gt;algo de informaci&amp;oacute;n&lt;/a&gt; sobre los pasos que realiza la funci&amp;oacute;n CreateProcess antes de &amp;quot;dar a luz&amp;quot; al correspondiente proceso hijo en Windows NT. En dicho art&amp;iacute;culo me centr&amp;eacute; &amp;uacute;nicamente en la parte que tiene que ver con la compatibilidad con sistemas anteriores mediante la aplicaci&amp;oacute;n de &lt;em&gt;shims&lt;/em&gt;. En Windows Vista la creaci&amp;oacute;n de procesos ha variado de manera muy considerable con respecto a Windows XP. Si le interesa saber los detalles sobre esto, reserve una copia de la quinta edici&amp;oacute;n del libro &amp;quot;&lt;a target="_blank" href="http://www.amazon.com/Windows%C2%AE-Internals-Including-Windows-PRO-Developer/dp/0735625301/ref=pd_bbs_sr_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1221689954&amp;amp;sr=1-2"&gt;Windows Internals&lt;/a&gt;&amp;quot;, donde se explican &amp;eacute;ste y otros aspectos.&lt;/p&gt;
&lt;p&gt;En Windows existe la posibilidad de ejecutar un proceso directamente en un depurador, y una de las formas de conseguir esto es mediante la clave de Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options. Dicha clave puede contener una subclave con el mismo nombre que el proceso que quiere depurar y, dentro de &amp;eacute;sta, un valor alfanum&amp;eacute;rico Debugger que indique qu&amp;eacute; depurador se quiere utilizar. Dos usos pr&amp;aacute;cticos de esta clave de Registro son:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Depurar procesos cr&amp;iacute;ticos del sistema operativo, como Lsass.exe o Winlogon.exe. Para ello lo que se suele hacer es agregar la clave&amp;nbsp;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Winlogon.exe y, dentro de ella, crear un valor alfanum&amp;eacute;rico de nombre Debugger cuyo contenido sea por ejemplo &amp;quot;C:\Depuradores\ntsd.exe -d -g -G&amp;quot; Con esto, cada vez que el sistema ejecute Winlogon.exe vamos a a&amp;ntilde;adir el depurador &lt;em&gt;NT Symbolic Debugger&lt;/em&gt;, Ntsd. (La &amp;uacute;ltima versi&amp;oacute;n est&amp;aacute; disponible en el paquete &lt;a target="_blank" href="http://www.microsoft.com/whdc/DevTools/Debugging/default.mspx"&gt;Debugging Tools for Windows&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Process Explorer emplea esta clave de registro cuando&amp;nbsp;se hace uso de la opci&amp;oacute;n que permite&amp;nbsp;reemplazar Administrador de tareas por Process Explorer (algo bastante recomendable, por cierto). As&amp;iacute; logra que cuando el sistema trate de ejecutar Taskmgr.exe (el ejecutable de Administrador de tareas), Process Explorer se ejecute en su lugar.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;El software malicioso tambi&amp;eacute;n hace uso de esta clave&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Los autores de software malicioso pronto se dieron cuenta de las enormes&amp;nbsp;posibilidades que ofrece esta clave de Registro y comenzaron a crear c&amp;oacute;digo malicioso que se agregara a dicha clave con nombres de ejecutables leg&amp;iacute;timos del sistema operativo, como el caso de Explorer.exe que nos ocupa. En concreto, un usuario afectado ten&amp;iacute;a en su sistema la clave de Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Explorer, y dentro de ella, un valor Debugger con contenido &amp;quot;C:\Archivos de programa\Microsoft Common\Wuauclt.exe&amp;quot;. Lo que se consigue con esto es que, cada vez que o bien el usuario o el sistema intente ejecutar Explorer.exe (algo que ocurre naturalmente durante el inicio de sesi&amp;oacute;n), acabe ejecut&amp;aacute;ndose ese tal ejecutable C:\Archivos de programa\Microsoft Common\wuauclt.exe, que es un troyano. Por la informaci&amp;oacute;n que he recabado de diversas empresas de seguridad, parece formar parte de los &amp;uacute;ltimamente tan populares virus del tipo &amp;quot;Autorun&amp;quot;, es decir, los que infectan unidades USB y agregan ficheros ocultos Autorun.inf que apuntan a c&amp;oacute;digo malicioso. La documentaci&amp;oacute;n que he encontrado indica&amp;nbsp;tambi&amp;eacute;n que&amp;nbsp;hay variantes &lt;em&gt;rootkit&lt;/em&gt; de este tipo de virus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;C&amp;oacute;mo solucionar el problema&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La soluci&amp;oacute;n en este caso consiste en pasar primero un antivirus actualizado al sistema. De todas formas, la desinfecci&amp;oacute;n raramente es completa tras el an&amp;aacute;lisis de un&amp;nbsp;&amp;uacute;nico&amp;nbsp;antivirus. Bien porque sus firmas no son capaces de detectar el virus (ning&amp;uacute;n antivirus es efectivo al 100%), bien porque el entorno infectado impide la actuaci&amp;oacute;n correcta del antivirus.&amp;nbsp;En estos casos se puede probar con otro antivirus (una segunda opini&amp;oacute;n), o bien abordar una desinfecci&amp;oacute;n manual. No comentar&amp;eacute; en detalle los detalles de una desinfecci&amp;oacute;n manual entre otros motivos porque no soy experto en la eliminaci&amp;oacute;n de &lt;em&gt;malware&lt;/em&gt; y adem&amp;aacute;s cada &lt;em&gt;malware&lt;/em&gt; emplea sus trucos para pasar desapercibido de cara al usuario. Mi recomendaci&amp;oacute;n en estos casos es hacer uso de las herramientas &lt;a target="_blank" href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx"&gt;Autoruns&lt;/a&gt; y &lt;a target="_blank" href="http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx"&gt;Process Explorer&lt;/a&gt; iniciando el sistema en Modo seguro.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prevenci&amp;oacute;n&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Las infecciones de virus se aprovechan en gran medida de los privilegios del usuario infectado. En la mayor&amp;iacute;a de casos, al menos en sistemas XP, estos privilegios son administrativos, por lo que los da&amp;ntilde;os pueden ser catastr&amp;oacute;ficos. Mis recomendaciones para evitar este tipo de infecciones son las ya conocidas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Utilizar una cuenta de usuario limitado para el trabajo cotidiano con el PC.&lt;/li&gt;
&lt;li&gt;Mantener actualizado el sistema operativo desde Windows Update.&lt;/li&gt;
&lt;li&gt;Activar un antivirus y un cortafuegos y mantenerlos al d&amp;iacute;a.&lt;/li&gt;
&lt;li&gt;Desconfiar del software que provenga de fuentes no oficiales.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Resumen&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Dejo finalmente un resumen con los posibles problemas de inicializaci&amp;oacute;n de Explorer.exe. Recuerde los s&amp;iacute;ntomas: El sistema llega a la pantalla de bienvenida o de inicio de sesi&amp;oacute;n pero, una vez el usuario se ha autenticado correctamente, solo se muestra un escritorio vac&amp;iacute;o, sin iconos, sin barra de tareas.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Si al iniciar manualmente Explorer.exe desde Administrador de tareas (Ctrl+Alt+Supr, men&amp;uacute; Archivo, Nueva tarea) todo funciona correctamente&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Causa 1: Virus. Leer &lt;a target="_blank" href="http://rinconwindows.blogspot.com/2008/02/al-iniciar-sesin-slo-se-muestra-el.html"&gt;este art&amp;iacute;culo&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Si al iniciar manualmente Explorer.exe desde Administrador de tareas (Ctrl+Alt+Supr, men&amp;uacute; Archivo, Nueva tarea) sigue fallando&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Causa 1: Virus. Leer este mismo art&amp;iacute;culo para intentar localizar d&amp;oacute;nde est&amp;aacute; el componente malicioso que est&amp;aacute; interfiriendo con la carga del proceso Explorer.exe&lt;/li&gt;
&lt;li&gt;Causa 2: Explorer.exe o alg&amp;uacute;n componente relacionado con su carga est&amp;aacute; da&amp;ntilde;ado o mal registrado. &lt;a target="_blank" href="http://msmvps.com/blogs/dmartin/archive/2008/08/04/problemas-con-la-inicializaci-243-n-de-explorer-exe.aspx"&gt;Este art&amp;iacute;culo&lt;/a&gt; ofrece pautas para depurar el problema.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1648116" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Explorer/default.aspx">Explorer</category></item><item><title>Windows Sidebar no se abre correctamente</title><link>http://msmvps.com/blogs/dmartin/archive/2008/09/04/windows-sidebar-no-se-abre-correctamente.aspx</link><pubDate>Thu, 04 Sep 2008 13:12:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1644660</guid><dc:creator>dmartin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1644660</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1644660</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/09/04/windows-sidebar-no-se-abre-correctamente.aspx#comments</comments><description>&lt;p&gt;Un usuario ten&amp;iacute;a el siguiente problema con Windows Sidebar: Al intentar iniciar esta aplicaci&amp;oacute;n, no ocurr&amp;iacute;a nada, ni&amp;nbsp;siquiera se mostraba&amp;nbsp;un mensaje de error.&lt;/p&gt;
&lt;p&gt;Ante un problema de este estilo, lo primero que suelo decirle al usuario es que abra Administrador de tareas y observe si la aplicaci&amp;oacute;n aparece residente en el equipo aunque no muestre su interfaz gr&amp;aacute;fica. En tal caso lo que suele ocurrir es que la aplicaci&amp;oacute;n est&amp;aacute; estancada&amp;nbsp;esperando a que ocurra alg&amp;uacute;n evento de sincronizaci&amp;oacute;n que debe se&amp;ntilde;alizar otro hilo, pero esto no ocurre nunca (interbloqueo). En&amp;nbsp;el&amp;nbsp;caso que nos ocupa&amp;nbsp;lo que ocurr&amp;iacute;a es que el proceso desparec&amp;iacute;a al poco tiempo de ser iniciado, as&amp;iacute; que los pasos a seguir ser&amp;iacute;an algo diferentes.&lt;/p&gt;
&lt;p&gt;En Windows XP y anteriores, un proceso pod&amp;iacute;a generar una excepci&amp;oacute;n y desaparecer de la memoria sin mostrarse un cuadro de di&amp;aacute;logo que invitase a enviar el reporte a Microsoft. En Windows Vista, la &lt;a target="_blank" href="http://rinconwindows.blogspot.com/2008/02/qu-sucede-cuando-ocurre-una-excepcin-no.html"&gt;nueva arquitectura&lt;/a&gt; del sistema de excepciones no manejadas en modo usuario impide que esto ocurra. As&amp;iacute; pues, determin&amp;eacute; que&amp;nbsp;el problema de inicializaci&amp;oacute;n no se deb&amp;iacute;a, por ejemplo,&amp;nbsp;a un puntero que estuviera accediendo a una direcci&amp;oacute;n inv&amp;aacute;lida de memoria,&lt;/p&gt;
&lt;p&gt;Una vez focalizado el problema, lo primero que suelo hacer es trazar la inicializaci&amp;oacute;n de la aplicaci&amp;oacute;n y comparar el resultado con una captura obtenida mediante &lt;a target="_blank" href="http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx"&gt;Process Monitor&lt;/a&gt; en el sistema afectado. Esto me ayuda a determinar el momento exacto en el que ocurre el error para as&amp;iacute; desarrollar una soluci&amp;oacute;n lo m&amp;aacute;s precisa y sencilla de aplicar posible. Podr&amp;iacute;amos aplicar m&amp;eacute;todos generales como reinstalar Windows Sidebar (si esto fuera posible) y quiz&amp;aacute; solucionar el problema, pero a m&amp;iacute; me gusta llegar a la causa exacta del problema, adem&amp;aacute;s, este blog trata de eso, &amp;iquest;no? ;-)&lt;/p&gt;
&lt;p&gt;Al abrir la captura de Process Monitor suelo posicionarme en el evento Process Exit, que suele estar situado casi al final de la captura.&lt;/p&gt;
&lt;p&gt;&lt;img width="545" src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Process_5F00_Exit.png" alt="Finalizaci&amp;oacute;n del proceso" height="104" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Entre otra informaci&amp;oacute;n, Process Monitor nos proporciona el c&amp;oacute;digo de salida del proceso (en la columna Detail). A partir de este evento, al dirigirme hacia arriba encontr&amp;eacute; una discrepancia interesante:&lt;/p&gt;
&lt;p&gt;&lt;img width="774" src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Imagen_5F00_Movavi.png" alt="La DLL Atl.dll no se encontraba en el directorio registrado" height="193" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Como puede ver, cierta informaci&amp;oacute;n de Registro referente a la DLL &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/3ax346b7(VS.71).aspx"&gt;Atl.dll&lt;/a&gt; apuntaba a una carpeta creada por una aplicaci&amp;oacute;n de terceros: &lt;a target="_blank" href="http://movavi.com/"&gt;Movavi&lt;/a&gt;. Inmediatamente despu&amp;eacute;s, el acceso a la correspondiente ruta ten&amp;iacute;a como resultado &amp;quot;PATH NOT FOUND&amp;quot;, es decir, ruta no encontrada. Al no encontrar la DLL, Sidebar.exe finalizaba de manera imprevista. Para solucionar el problema,&amp;nbsp;invit&amp;eacute; al usuario&amp;nbsp;a que registrara la DLL Atl.dll con el siguiente comando (ejecutado desde una consola con privilegios administrativos):&lt;/p&gt;
&lt;p&gt;regsvr32 atl.dll&lt;/p&gt;
&lt;p&gt;En resumen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El usuario hab&amp;iacute;a instalado la aplicaci&amp;oacute;n Movavi en su sistema.&lt;/li&gt;
&lt;li&gt;Dicha aplicaci&amp;oacute;n incluye su propia versi&amp;oacute;n de la DLL Atl.dll y la registra en su subcarpeta de %ProgramFiles%\Common Files.&lt;/li&gt;
&lt;li&gt;El usuario desinstal&amp;oacute; la aplicaci&amp;oacute;n. La desinstalaci&amp;oacute;n no es completa por alg&amp;uacute;n motivo y el Registro a&amp;uacute;n apunta a una ubicaci&amp;oacute;n que no existe.&lt;/li&gt;
&lt;li&gt;Como consecuencia de todo esto, Sidebar no se abre.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Una vez reunida toda la informaci&amp;oacute;n sobre el problema, siempre&amp;nbsp;intento reproducirlo en mis sistemas y, si procede. alerto al fabricante para que corrija el defecto en versiones posteriores de su software.&lt;/p&gt;
&lt;p&gt;&amp;iexcl;Caso cerrado!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1644660" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Shell/default.aspx">Shell</category><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category></item><item><title>No se puede instalar la actualización KB955428</title><link>http://msmvps.com/blogs/dmartin/archive/2008/08/15/no-se-puede-instalar-la-actualizaci-243-n-kb955428.aspx</link><pubDate>Fri, 15 Aug 2008 20:15:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1644779</guid><dc:creator>dmartin</dc:creator><slash:comments>10</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1644779</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1644779</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/08/15/no-se-puede-instalar-la-actualizaci-243-n-kb955428.aspx#comments</comments><description>&lt;p&gt;En los &amp;uacute;ltimos d&amp;iacute;as he recibido ya varios reportes de usuarios que no consiguen instalar la actualizaci&amp;oacute;n &lt;a target="_blank" href="http://www.microsoft.com/technet/security/bulletin/ms08-044.mspx"&gt;KB955428&lt;/a&gt;, que corrige una vulnerabilidad en Microsoft Works. El error que aparece es el 0x8024002D (WU_E_FF_SOURCE_ABSENT). Este es el extracto del fichero WindowsUpdate.log de un sistema afectado por este problema:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
&lt;p&gt;2008-08-14&amp;nbsp;21:15:35:225&amp;nbsp;1224&amp;nbsp;bb8&amp;nbsp;AU&amp;nbsp;&amp;nbsp; # 1 updates detected&lt;br /&gt;2008-08-14&amp;nbsp;21:15:35:225&amp;nbsp;1224&amp;nbsp;b68&amp;nbsp;Report&amp;nbsp;REPORT EVENT: {B8F1D8C8-9EBA-48DB-B60C-D2B4E5E29019}&amp;nbsp;2008-08-14 21:15:18:566+0200&amp;nbsp;1&amp;nbsp;182&amp;nbsp;101&amp;nbsp;{B40E4721-6DDE-4C74-A3E0-EE1EDEB0BAF7}&amp;nbsp;104&amp;nbsp;8024002d&amp;nbsp;AutomaticUpdates&amp;nbsp;Failure&amp;nbsp;Content Install&amp;nbsp;Installation Failure: Windows failed to install the following update with error 0x8024002d: Update for Microsoft Works 8 (KB955428).&lt;br /&gt;2008-08-14&amp;nbsp;21:15:35:226&amp;nbsp;1224&amp;nbsp;bb8&amp;nbsp;AU&amp;nbsp;#########&lt;br /&gt;2008-08-14&amp;nbsp;21:15:35:226&amp;nbsp;1224&amp;nbsp;bb8&amp;nbsp;AU&amp;nbsp;##&amp;nbsp; END&amp;nbsp; ##&amp;nbsp; AU: Search for updates [CallId = {68A5E66E-B57F-402C-9ABC-09D9F61BFB8A}]&lt;br /&gt;2008-08-14&amp;nbsp;21:15:35:226&amp;nbsp;1224&amp;nbsp;bb8&amp;nbsp;AU&amp;nbsp;#############&lt;/p&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Lo que&amp;nbsp;quiere decir todo esto&amp;nbsp;es que la actualizaci&amp;oacute;n requiere que se introduzca el CD original de Works para poder instalarse correctamente. El problema es que muchos equipos OEM preinstalan Works y el usuario&amp;nbsp;no dispone del&amp;nbsp;CD. En estos casos, descargue la actualizaci&amp;oacute;n desde &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=es&amp;amp;FamilyID=458985c3-9c6f-4049-81cd-0d0389c81f11"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=es&amp;amp;FamilyID=458985c3-9c6f-4049-81cd-0d0389c81f11&lt;/a&gt;, haga doble clic sobre el fichero .cab y seguidamente doble clic sobre el fichero .msp para comenzar la instalaci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;Espero que sea de utilidad.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1644779" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category></item><item><title>¿Por qué no puedo reducir más una de mis particiones desde Windows Vista?</title><link>http://msmvps.com/blogs/dmartin/archive/2008/07/29/191-por-qu-233-no-puedo-reducir-m-225-s-una-de-mis-particiones-desde-windows-vista.aspx</link><pubDate>Wed, 30 Jul 2008 02:56:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1642639</guid><dc:creator>dmartin</dc:creator><slash:comments>15</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/rsscomments.aspx?PostID=1642639</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/dmartin/commentapi.aspx?PostID=1642639</wfw:comment><comments>http://msmvps.com/blogs/dmartin/archive/2008/07/29/191-por-qu-233-no-puedo-reducir-m-225-s-una-de-mis-particiones-desde-windows-vista.aspx#comments</comments><description>&lt;p&gt;Una de las novedades de Windows Vista y Windows Server 2008 es la posibilidad de reducir y ampliar el tama&amp;ntilde;o de un volumen sin perder ning&amp;uacute;n dato. Hasta ahora, esto solo era posible utilizando aplicaciones de terceros. Al abrir el nuevo Administrador de discos de Windows Vista, seleccionar un volumen con el bot&amp;oacute;n derecho y hacer clic sobre Reducir volumen, nos aparece este cuadro de di&amp;aacute;logo:&lt;/p&gt;
&lt;p&gt;&lt;img width="421" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Reducir_5F00_Vista.png" alt="Cuadro de di&amp;aacute;logo para reducir un volumen" height="241" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Una de las consultas m&amp;aacute;s frecuentes es por qu&amp;eacute; el tama&amp;ntilde;o m&amp;aacute;ximo que se puede reducir es, en el caso de la figura, de 9.048 MB, si el volumen es posible que disponga de mucho m&amp;aacute;s espacio libre.&lt;/p&gt;
&lt;p&gt;A la hora de computar el tama&amp;ntilde;o m&amp;aacute;ximo que se puede reducir en un volumen, se tienen en cuenta tres aspectos:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;El espacio libre en el volumen.&lt;/li&gt;
&lt;li&gt;El espacio dedicado a las copias sombra (puntos de restauraci&amp;oacute;n).&lt;/li&gt;
&lt;li&gt;La posici&amp;oacute;n de ciertos archivos que no se pueden mover (como el archivo de paginaci&amp;oacute;n).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;El tama&amp;ntilde;o m&amp;aacute;ximo que se puede reducir ser&amp;aacute; el m&amp;iacute;nimo entre el espacio libre en el volumen y el m&amp;aacute;ximo de espacio que se podr&amp;iacute;a reducir teniendo en cuenta estos dos aspectos:&amp;nbsp;las copias sombra (puntos de restauraci&amp;oacute;n) y la posici&amp;oacute;n m&amp;aacute;s desplazada de un archivo que no se pueda mover. Al tama&amp;ntilde;o total&amp;nbsp;se le suele a&amp;ntilde;adir&amp;nbsp;un cierto n&amp;uacute;mero de MB&amp;nbsp;para dar un margen de espacio tras la reducci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;Para Administrador de discos, los ficheros que no se pueden mover son los siguientes: Pagefile.sys (el archivo de paginaci&amp;oacute;n), Hiberfil.sys (el fichero de hibernaci&amp;oacute;n), Crashdmp.sys y los ficheros internos NTFS $bitmap, $mftmirr, $secure, $usnjrnl y $logfile. Por tanto, si alguno de esos ficheros se sit&amp;uacute;a en una posici&amp;oacute;n casi al final del volumen, el tama&amp;ntilde;o para reducir ser&amp;aacute; muy peque&amp;ntilde;o. Vea este ejemplo:&lt;/p&gt;
&lt;p&gt;&lt;img width="536" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/dmartin/Imagen_5F00_Disco.png" alt="Diagrama de un volumen con poco espacio para reducir" height="298" style="vertical-align:middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Como observa en el diagrama, el disco tiene 25 GB ocupados, por lo que el espacio libre en disco son 95 GB. Sin embargo, dado que el fichero Pagefile.sys se sit&amp;uacute;a casi al final del volumen, el espacio m&amp;aacute;ximo disponible para reducir ser&amp;aacute; de solo 9 GB.&lt;/p&gt;
&lt;p&gt;Puede ver gr&amp;aacute;ficamente la disposici&amp;oacute;n de los cl&amp;uacute;sters usando alguna herramienta de desfragmentaci&amp;oacute;n de terceros, como &lt;a target="_blank" href="http://www.diskeeper.com/"&gt;Diskeeper&lt;/a&gt; o similares.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1642639" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/dmartin/archive/tags/Consultas/default.aspx">Consultas</category></item></channel></rss>