martes, 30 de diciembre de 2008

Problema (y solución) al instalar .NET Framework 3.5 (V)

Seguimos con errores al instalar el .NET Framework 3.5 SP1, esta vez se trata de un Windows XP SP2 que, aparentemente, no tienen ningún .NET Framework instalado:


[XX/XX/08,16:24:15] RGB Rast: [2] Error: Installation failed for component RGB Rast. MSI returned error code 1625
[XX/XX/08,16:24:30] WapUI: [2] DepCheck indicates RGB Rast is not installed.

Intentamos instalar manualmente el componente RGB RAST pero se produce el siguiente error:

MSI (s) (9C:AC) [16:26:53:437]: Machine policy value 'DisableUserInstalls' is 0
MSI (s) (9C:AC) [16:26:53:453]: File will have security applied from OpCode.
MSI (s) (9C:AC) [16:26:53:453]: SOFTWARE RESTRICTION POLICY: Verifying package --> 'C:\dotnetfx30\RGB9RAST_x86.msi' against software restriction policy
MSI (s) (9C:AC) [16:26:53:453]: SOFTWARE RESTRICTION POLICY: C:\dotnetfx30\RGB9RAST_x86.msi has a digital signature
MSI (s) (9C:AC) [16:26:53:531]: SOFTWARE RESTRICTION POLICY: SaferComputeTokenFromLevel reported failure. Assuming untrusted. . . (GetLastError returned 1260)
MSI (s) (9C:AC) [16:26:53:531]: La instalación de C:\dotnetfx30\RGB9RAST_x86.msi no está permitida debido a un error en el proceso de directiva de restricción del software. No hay confianza en el objeto.
MSI (s) (9C:AC) [16:26:53:531]: Note: 1: 1718 2: C:\WINDOWS\Installer\1b5ea04.msi
MSI (s) (9C:AC) [16:26:53:531]: MainEngineThread is returning 1625
MSI (c) (74:88) [16:26:53:640]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (c) (74:88) [16:26:53:640]: MainEngineThread is returning 1625


Como os podéis imaginar, en las políticas de restricción de software del equipo no había ABOSLUTAMENTE NADA!!! Tenía permisos de administrador pero por algún motivo no me dejaba instalar un componente de la propia Microsoft.


Buscando un poco encuentro la solución en esta página: http://support.microsoft.com/kb/925336 que consiste en:


1. Haga clic en Inicio y en Ejecutar, escriba regedit y haga clic en Aceptar.


2. En el Editor del Registro, busque la clave siguiente y después haga clic en ella:
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers

Nota: antes de modificar la clave, recomendamos que haga un copia de seguridad. Para ello, haga clic con el botón secundario en CodeIdentifiers y, a continuación, haga clic en Exportar. Guarde el archivo en una ubicación donde pueda buscarlo en el equipo.

3. Cambie el valor del Registro PolicyScope. Para ello, haga doble clic en PolicyScope y, a continuación, cambie la configuración de 0 a 1.

4. Cierre el Editor del Registro.

5. Haga clic en Inicio y en Ejecutar, escriba cmd y, a continuación, haga clic en Aceptar para abrir una ventana de símbolo del sistema.

6. En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:

net stop msiserver

Este comando detiene el servicio Windows Installer si se está ejecutando actualmente en segundo plano. Cuando el servicio se haya detenido, cierre la ventana de símbolo del sistema y, a continuación, vaya al paso 7.

Nota: si recibe el mensaje siguiente en el símbolo del sistema, cierre la ventana de símbolo del sistema y, a continuación, vaya al paso 7: El servicio Windows Installer no se inicia

7. Instale el paquete que estaba intentando instalar cuando recibió el mensaje de error que se menciona en la sección "Síntomas".

8. Después de instalar el paquete, repita los pasos 1 y 2. A continuación, vuelva a establecer el valor del Registro PolicyScope en 0.

9. Si desconectó el equipo de un dominio, vuelva a unirse al dominio y, a continuación, reinicie el equipo.Nota: si no desconectó el equipo de un dominio, no tiene que reiniciarlo.

Lo curioso del tema es la posible explicación que dan, que dice algo como: “Si un archivo de paquete .msi o .msp es demasiado grande para caber en una parte contigua de memoria virtual, Windows Installer no puede comprobar que el paquete es correcto.”

Y claro, en vez de decir que no puede instalarlo porque no tiene memoria virtual suficiente, pues nos dice que no tenemos permisos porque hay una política de restricción de software que lo impide, todo muy coherente, sí señor ¬¬


Volviendo al tema, una vez modificada la entrada en el registro, se intenta la instalación, pero vuelve a fallar, esta vez con el error :


[09/03/08,11:30:32] Microsoft .NET Framework 2.0a: [2] Error: Installation failed for component Microsoft .NET Framework 2.0a. MSI returned error code 1603
[09/03/08,11:32:03] WapUI: [2] DepCheck indicates Microsoft .NET Framework 2.0a is not installed.

Este ya es un error conocido, y lo solucioné como otras veces: Problema (y solución) al instalar .NET Framework 3.5 (II)

Relacionado:
Problema (y solución) al instalar .NET Framework 3.5 (I)
Problema (y solución) al instalar .NET Framework 3.5 (II)
Problema (y solución) al instalar .NET Framework 3.5 (III)
Problema (y solución) al instalar .NET Framework 3.5 (IV)

4 comentarios:

Anónimo dijo...

Hola pablo es muy bueno tu comentario pero, mi pregunta es ¿son los mismos pasos a seguir para instalar el net framework 2.0?, si no lo es podrías publicar como instalarlo. gracias

Pablo Bouzada dijo...

Hola Anónimo, el framework 3.5 también te instala el 2.0, ya que el núcleo es el mismo.

Anónimo dijo...

que tal pablo, bueno mi problema es que yo no puedo instalar la version 1.1 siquiera,dice que la instalacion terminó antes de tiempo.Yo la desinstalé porque la 3.5 me pedía desinstalar anteriores versiones...y ahora no puedo instalar ninguna.¿qué hagoo?? cómo soluciono esto?
espero no sea malo para algunas operaciones en otros programas,porque no tengo la menor idea de para qué sirven los .NET framework...
por cualquier ayuda mil gracias te doy.

Vero

Pablo Bouzada dijo...

Vero, en el último link del post hay otro para una herramienta que hace una desinstalación completa del framework.

Para explicarte para qué sirve el .NET Framework necesitaría 10 o 20 posts :P