Error .NET Framework 3.5 SP1 y ClickOnce

Posted: 23 julio 2009 in .NET, ClickOnce, William Rivera, XNA

Hace poco intenté generar un instalador usando ClickOnce para un proyecto de juego XNA para Windows y usando el .NET Framework 3.5 SP1 como pre-requisito y ademas seleccionando la opción de descargar los pre-requisitos desde la misma ubicación que mi aplicación con el fin de que el instalador verifique los pre-requisitos seleccionados y los instale si no se encuentran en la maquina, como se ve observa en la siguiente imagen.

Al realizar la publicación del proyecto para que me genere el instalador en una carpeta local del sistema, de modo que se pueda copiar a un CD o DVD me encontré con el siguiente error y otros similares producidos porque el paquete de bootstrapper del .NET Framework 3.5 SP1 no esta configurado correctamente:

The install location for prerequisites has not been set to ‘component vendor’s web site’ and the file ‘DotNetFX35SP1\dotNetFX20\aspnet.msp’ in item ‘.NET Framework 3.5 SP1′ can not be located on disk.

La solución a este problema y otros que se pueden presentar con el Framework 3.5 se encuentran en este Readme Readme, sin embargo, a continuación la detallo para mayor facilidad.

I. Actualizar los datos del paquete

  1. Vaya al directorio “[Program Files]\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1″ o “%ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1″ para sistemas operativos x64
  2. Edite el archivo product.xml usando notepad (Si esta en Windows Vista o Windows 7 debe primero ejecutar notepad como Administrador y luego abrir el archivo desde el programa)
  3. Pegue lo siguiente dentro del elemento <PackageFiles>:
    <PackageFile Name=”TOOLS\clwireg.exe” />
    <PackageFile Name=”TOOLS\clwireg_x64.exe” />
    <PackageFile Name=”TOOLS\clwireg_ia64.exe” />
  4. Busque el elemento <PackageFile Name=”dotNetFX30\XPSEPSC-x86-en-US.exe” y cambie el valor de PublicKey a: 3082010A0282010100A2DB0A8DCFC2C1499BCDAA3A34AD23596BDB6CBE2122B794C8EAAEBFC6D526C232118BBCDA5D2CFB36561E152BAE8F0DDD14A36E284C7F163F41AC8D40B146880DD98194AD9706D05744765CEAF1FC0EE27F74A333CB74E5EFE361A17E03B745FFD53E12D5B0CA5E0DD07BF2B7130DFC606A2885758CB7ADBC85E817B490BEF516B6625DED11DF3AEE215B8BAF8073C345E3958977609BE7AD77C1378D33142F13DB62C9AE1AA94F9867ADD420393071E08D6746E2C61CF40D5074412FE805246A216B49B092C4B239C742A56D5C184AAB8FD78E833E780A47D8A4B28423C3E2F27B66B14A74BD26414B9C6114604E30C882F3D00B707CEE554D77D2085576810203010001
  5. Busque el elemento <PackageFile Name=”dotNetFX30\XPSEPSC-amd64-en-US.exe” y cambie el valor de PublicKey al mismo del paso anterior
  6. Guarde el archivo product.xml

II. Descargue y extraiga los archivos de instalación

  1. Descargue el archivo dotNetFx35.exe a su disco duro desde acá
  2. Abra una ventana de línea de comandos y vaya hasta el directorio en el cual descargó el archivo dotNetFx35.exe.
  3. En la ventana de comandos escriba:
    dotNetFx35.exe /x:.
    Esto extraerá los archivos del Framework a una carpeta llamada “WCU” en el directorio actual.
  4. Copie los contenidos de la carpeta WCU\dotNetFramework y peguelos en el directorio %Program Files%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 (%ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 para sistemas operativos x64)
    NOTA: No copie el directorio WCU\dotNetFramework como tal sino las 5 carpetas y el archivo dotNetFx35setup.exe que contiene.

    Ahora puedes borrar los archivos y carpetas que descargó y extrajó en los pasos 1 y 3.

Y listo, eso es todo.

Advertisement
Comentarios
  1. Marc dice:

    Primero teneis que hacer el punto II y luego el punto I, por todo lo demás, gracias por el articulo, me fue de maravilla.

    Saludos,

    • Marc dice:

      Perdon, me confundi, no hay q hacerlo del reves, simplemente la carpeta del punto I no es correcta, o almenos cuando lo tuve q hacer yo, no existia.

      Saludos,

    • Willy® dice:

      Marc, me alegro que te haya funcionado. Es extraño que no tuvieras la carpeta del punto I, seguramente algo salió mal al instalar el .Net Framework 3.5 SP1 ya que este es el orden que sugiere en el Readme.

      Saludos

  2. Gabriel dice:

    Por favor ayuda, tengo 2 archivos con estos nombres…

    14ecfa516144a384f4e5edc614
    db27987027dc4bf790a44d46

    Pero cuando le voy a eliminar sale que clwreg y/o aspnet.msp esta en uso… no se como aparecieron tales archivos en el computador… y no salen de mi carpeta… agradecimiento de antemano…

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s