1. Requisitos del sistema para instalar .NET Framework 3.0
2. .NET Framework 3.0: problemas de instalación conocidos
3. Pasos para la solución de problemas relacionados con errores de descarga
4. Problemas conocidos de Windows Communication Foundation
5. Problemas conocidos de Windows Workflow Foundation 6. Problemas conocidos de Windows Presentation Foundation
Procesador | Mínimo:
Opción recomendada:
|
Sistema operativo | .NET Framework 3.0 puede instalarse en cualquiera de los siguientes sistemas:
*Windows Vista viene con .NET Framework 3.0. No se necesita ningún otro paquete de instalación. Los paquetes independientes de .NET Framework 3.0 no se admiten en Vista. |
RAM | Mínimo:
Opción recomendada:
|
Disco duro | pueden ser necesarios hasta 500 MB de espacio disponible. |
Unidad de CD o DVD | No es necesaria. |
Pantalla | Mínimo:
Opción recomendada:
|
Mouse (ratón) | No es necesario |
Cuando se inicia el instalador de .NET Framework 3.0, la ubicación predeterminada de la instalación es la unidad del sistema, que es la unidad que lo inicia. Asegúrese de que la unidad del sistema dispone de la cantidad de espacio libre requerida, es decir, hasta 500 MB.
Al descargar e instalar .NET Framework 3.0 se producen errores de forma intermitente.
Para resolver este problema
Vuelva a ejecutar dotnetfx3setup.exe desde el sitio Web e intente la descarga otra vez. Haga clic aquí para obtener más información acerca de la solución de problemas de errores de descarga.
O bien,
Instale todo el paquete redistribuible dotnetfx3.exe (x86) o dotnetfx3_x64.exe (x64). Puede encontrar estos paquetes redistribuibles en la ubicación de descarga de .NET Framework 3.0.
Si hay que reiniciar el programa de instalación y la aplicación antivirus está configurada para limpiar el directorio Temp al iniciar, se eliminarán archivos de instalación necesarios y se producirá un error relacionado con el programa de instalación indicando un error de programa no encontrado.
Para resolver este problema
Antes de ejecutar el programa de instalación de .NET Framework 3.0, cambie la configuración de las aplicaciones antivirus para que no se limpie la carpeta Temp al iniciar o reiniciar. Consulte la documentación del antivirus con el fin de saber qué pasos hay que seguir para realizar esta operación.
Si al iniciar el modo de mantenimiento hay otros procesos en ejecución, por ejemplo software de detección de virus, éstos pueden ralentizar la instalación considerablemente y puede dar la impresión de que se ha producido un error de la misma.
Para resolver este problema
Tenga paciencia. No hay solución. No se ha producido ningún error de instalación.
Puede obtener un error del tipo "Desinstale Windows Workflow Foundation" al instalar .NET Framework 3.0, pero no hay ninguna entrada en Agregar o quitar programas en Windows Workflow Foundation para desinstalar el producto.
Para resolver este problema
Ejecute la herramienta de desinstalación que encontrará en: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
En Windows XP SP2 y Windows 2003 SP1, si dispone de una versión localizada de MSXML6 previamente instalada, la instalación de .NET Framework 3.0 sobrescribirá la versión localizada de MXSML6 con la versión en inglés.
Para resolver este problema
Reinstale la versión localizada de MSXML6 después de instalar .NET Framework 3.0.
Windows Vista viene con .NET Framework 3.0. No se necesita ningún otro paquete de instalación. Los paquetes independientes de .NET Framework 3.0 no se admiten en Vista.
En esta sección se describen los problemas que puede encontrar si anteriormente instaló una versión preliminar (CTP y Beta) de .NET Framework 3.0 y desea quitarla para realizar una actualización a una versión RTM.
Ejecute la herramienta de desinstalación
La herramienta de desinstalación de .NET Framework 3.0 está disponible en: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146. Esta herramienta resuelve muchos problemas de desinstalación y es el primer paso más adecuado para intentar resolver los problemas de instalación y reinstalación. Los detalles sobre el uso correcto de la herramienta aparecen detallados en la página de descarga.
Si no puede ejecutar la herramienta o si no resuelve el problema, consulte la sección Problemas conocidos y soluciones que aparece a continuación para buscar una solución.
Nota: estos problemas de instalación sólo se producen si ha instalado en el sistema una versión preliminar anterior de .NET Framework 3.0 antes de instalar la versión RTM. Los problemas que ocasionan estos comportamientos se han tratado en las ediciones preliminares de .NET Framework 3.0 más recientes.
Problemas conocidos y soluciones
2.7.1“Microsoft Digital Identity Service” (idsvc) no se ha eliminado o desinstalado
En el momento de la desinstalación, algunas versiones preliminares de .NET Framework 3.0 no eliminaron correctamente todos los servicios que habían creado. La presencia de uno de esos servicios en un sistema bloquea la instalación de .NET Framework 3.0. La instalación no se realizará correctamente y se producirá este error:
ERROR_INSTALL_FAILURE 1603 Error grave durante la instalación
Además, uno de los archivos del Registro %temp%\dd_wcf_retCA*.txt mostrará lo siguiente:
ServiceModelReg [15:48:08:041]: Installing: Microsoft Digital Identity Service (idsvc)
ServiceModelReg [15:48:08:073]: Error: System.ComponentModel.Win32Exception: El nombre ya es usado como nombre de servicio o como nombre para mostrar de servicios
Para resolver este problema
Ejecute la herramienta de desinstalación que encontrará en: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
Si el problema continúa:
abra el símbolo del sistema.
2.7.2 Algunas claves del Registro para contadores de rendimiento de WCF no se han eliminado o desinstalado en algunas versiones preliminares de .NET Framework 3.0
Algunas versiones preliminares de .NET Framework 3.0 no quitaron todas las claves del Registro para contadores de rendimiento durante la desinstalación. La presencia de estas claves bloquea la instalación de .NET Framework 3.0. La instalación no se realizará correctamente y se producirá este error:
“ERROR_INSTALL_FAILURE 1603 Error grave durante la instalación”
Es posible que las siguientes claves sigan existiendo en el Registro después de la desinstalación:
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC Bridge 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelService 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMSvcHost 3.0.0.0\Performance
Para resolver este problema
Ejecute la herramienta de desinstalación que encontrará en: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
Si el problema continúa:
1. Intente reiniciar. Los contadores de rendimiento se pueden desestabilizar por muchas causas. El reinicio puede arreglar algunos de estos problemas y resulta más seguro que modificar el Registro manualmente.
2. Si esto no resuelve el problema:
a. Compruebe las siguientes claves del Registro. Elimine las claves del Registro principales de cualquiera de las siguientes que estén vacías o cuyos valores contengan “Wbem*”:
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC Bridge 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelService 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMSvcHost 3.0.0.0\Performance
b. Por ejemplo, si esta clave está vacía:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
debe eliminar:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0”
2.7.3 Entradas machine.config antiguas que hacen referencia a versiones “2.0.0.0” de la instalación de bloques de ensamblados de .NET Framework 3.0
Algunas versiones preliminares de .NET Framework 3.0 no quitaron todos las entradas machine.config durante la desinstalación. Cualquier entrada que haga referencia a la versión 2.0.0.0 de “System.ServiceModel.dll” en el archivo machine.config bloqueará la instalación de .NET Framework 3.0. La instalación no se realizará correctamente y producirá este error:
“ERROR_INSTALL_FAILURE 1603 Error grave durante la instalación”
Además:
1. En el registro de eventos de la aplicación aparecerá un evento de error que hace referencia a problemas al ejecutar ServiceModelReg.exe.
2. El archivo de registro de la instalación denominado “dd_wcf_retCA*”, que se encuentra en la ubicación de directorio %temp% del usuario contiene una entrada que indica que hay problemas al ejecutar ServiceModelReg.exe.
3. La entrada de registro de eventos o la de registro de la instalación pueden producir una excepción similar a la siguiente (la información de la hora variará):
ServiceModelReg [16:21:10:656]: Error: System.IO.FileLoadException: No se puede cargar el archivo o ensamblado 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ni una de sus dependencias. La definición del manifiesto del ensamblado no coincide con la referencia al ensamblado. (Excepción de HRESULT: 0x80131040)
Para resolver este problema
Quite manualmente las entradas machine.config antiguas:
1. Desde una ventana del símbolo del sistema, ejecute “notepad %windir%\microsoft.net\framework\v2.0.50727\config\machine.config”
2. Quite todos los nodos XML y nodos secundarios que hagan referencia a System.ServiceModel.dll.
3. Si está ejecutándose en un equipo de 64 bits y sigue existiendo el siguiente archivo config:
“%windir%\Microsoft.NET\Framework64\v2.0.50727\config\machine.config”
, modifique el archivo para quitar todos los nodos xml y los nodos secundarios que hagan referencia a System.ServiceModel.dll.
2.7.4 Puede que no sea posible hospedar en Web los servicios WCF si previamente se instaló una versión de WCF anterior a RC1
Si instaló una versión anterior de .NET Framework 3.0 mientras estaba instalado IIS, es posible que al actualizar a la versión RTM de .NET Framework 3.0 tenga dificultades al obtener acceso a los servicios WCF que están hospedados en IIS mediante archivos .svc. En los equipos que ejecutan Windows Server 2003, el acceso a una extensión .svc desde el explorador puede devolver un error “404: No se ha encontrado la página”. En los equipos que ejecutan Windows XP, el contenido de .svc se puede mostrar como texto sin formato.
Esto se debe a un problema con los registros de asignaciones de secuencias de comandos de WCF en una versión anterior.
Para resolver este problema
Existen tres formas de solucionar este problema:
1. Descargue la herramienta no compatible, CleanIISScriptMaps.exe de http://wcf.netfx3.com/files/folders/product_team/entry5648.aspx. Ejecute la herramienta desde una consola de comandos sin ningún argumento.
2. Desinstale y reinstale IIS o vuelva a crear los sitios Web:
a. Desinstale IIS y reinstálelo para actualizar la metabase de IIS. A continuación, ejecute manualmente la herramienta de instalación WCF para volver a registrar los mapas de secuencias de comandos de WCF:
“%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe” /r /y
b. Si está ejecutando Windows 2003 Server, es posible que pueda resolver el problema eliminando el “Sitio Web predeterminado” y volviéndolo a crear.
3. Instale .svc manualmente como una solución provisional:
a. Puede ejecutar el siguiente comando para instalar la asignación de .svc manualmente. Sin embargo, esto actualiza la metabase de IIS de los sitios existentes.
"%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe" /s:W3SVC
2.7.5 Los daños en la metabase de IIS bloquean la instalación de .NET Framework 3.0
Si instaló una versión anterior de .NET Framework 3.0 mientras estaba instalado IIS, es posible que la metabase de IIS estuviese dañada. Esto puede bloquear la instalación de .NET Framework 3.0.
Puede identificar este problema de las siguientes maneras:
1. La instalación no se realizará correctamente y producirá este error:
“ERROR_INSTALL_FAILURE 1603 Error grave durante la instalación”
2. En el registro de eventos de la aplicación aparecerá un evento de error que hace referencia a un error para registrar los mapas de secuencias de comandos de WCF. El origen del evento es System.ServiceModel.Install.dll 3.0.0.0.
3. Los registros de instalación del directorio %temp% también contendrán referencias a un error para registrar los mapas de secuencias de comandos de WCF.
4. Tanto el registro de eventos como el registro de la instalación pueden contener la siguiente excepción de seguimiento de la pila:
System.ApplicationException: ServiceModelReg.exe has detected a possible corruption in the IIS metabase that prevents the registration of the ServiceModel IIS scriptmaps. Please either fix the IIS metabase corruption, or, if you do not desire ServiceModel WebHost functionality, disable the IISAdmin service and reregister ServiceModel (ServiceModelReg.exe ha detectado un posible daño en la metabase de IIS que impide el registro de los mapas de secuencias de comandos de IIS de ServiceModel. Corrija el daño de la metabase de IIS o, si no desea la funcionalidad de WebHost de ServiceModel, deshabilite el servicio IISAdmin y vuelva a registrar ServiceModel).
Para resolver este problema
1. Desinstale IIS.
2. Vuelva a instalar IIS.
3. Vuelva a ejecutar el programa de instalación de .NET Framework 3.0.
Este error se produce cuando el servicio BITS se deshabilita, no existe, se eliminó de la aplicación de servicios, se interrumpió mientras el proceso de descarga estaba en curso o si un servicio del que depende BITS se eliminó o produjo un error. El mensaje de error para este problema es “El servicio BITS se debe habilitar antes de iniciar el proceso de instalación. Habilite el servicio BITS y vuelva a ejecutar el programa de instalación”.
Para resolver este problema
services.msc
y, a continuación, haga clic en Aceptar.Nota: si no ve la opción Servicio de transferencia inteligente en segundo plano en la lista, significa que el servicio no está instalado en el equipo. Puede descargarlo e instalarlo desde http://www.microsoft.com/downloads/details.aspx?FamilyId=B93356B1-BA43-480F-983D-EB19368F9047&displaylang=en.
Si estos pasos no resuelven el problema, quizá deba habilitar los servicios de los que depende BITS.
Para habilitar dependencias
Estos errores se producen cuando no están registradas las interfaces de BITS o la configuración del Registro está dañada.
Para resolver este problema
Actualice a BITS 2.0. Puede descargarlo e instalarlo desde http://www.microsoft.com/downloads/details.aspx?FamilyId=B93356B1-BA43-480F-983D-EB19368F9047&displaylang=en.
O bien,
Repare el servicio BITS. Para ello, ejecute la herramienta bitsadmin desde el símbolo del sistema:
Bitsadmin /util /repairservice /force
Puede descargar la herramienta Bitsadmin desde: http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en.
Estos errores se pueden producir por una o más de las siguientes razones:
Para resolver este problema
Proporcione la configuración correcta del servidor proxy y asegúrese de que el equipo puede determinar correctamente el servidor proxy.
O bien,
Actualice a BITS 2.0. Puede descargar BITS 2.0 desde:
http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en.
Nota: para resolver estos errores, salga del programa de instalación, compruebe que está conectado a la red y vuelva a iniciar el programa de instalación.
Estos errores se producen cuando el servicio BITS no puede crear un archivo o escribir en éste. Puede que se esté ejecutando otro programa, como chkdsk.exe, que puede haber bloqueado el disco e impedido que BITS escriba en el archivo.
Para resolver este problema
Asegúrese de que no hay ningún otro programa ejecutándose (por ejemplo, chkdsk.exe) que pudiera bloquear el disco y vuelva a intentar la descarga.
O bien,
Reinicie el equipo y, a continuación, inicie de nuevo el programa de instalación. Asegúrese de que está conectado a Internet.
Error del servicio BITS al producirse uno de los siguientes errores del servidor proxy:
Para resolver este problema
Proporcione las credenciales correctas para la autenticación del servidor proxy y reinicie el programa de instalación.
O bien,
Actualice el servidor proxy para que sea compatible con HTTP1.1 y asegúrese de que el proxy admita credenciales implícitas (como NTLM). Puede que sea necesario ponerse en contacto con el administrador de red.
O bien,
Omita el proxy; para ello, cambie la configuración de proxy de Internet Explorer.
Para omitir un servidor proxy:
Si necesita obtener más información en relación con la configuración del servidor proxy, póngase en contacto con el administrador de red.
El servicio BITS no se ejecuta en:
Para resolver este problema
No hay solución. No se admiten estos escenarios.
4.10 Excepción cuando se ejecuta un servicio TCP y TCP MEX en el mismo puerto
Cuando está habilitado el uso compartido de puertos, configurar un servicio TCP y un extremo TCP MEX para que utilicen el mismo puerto produce una excepción AddressAlreadyInUse al iniciar el servicio.
Existen dos maneras de solucionar este problema:
1. Cambie la configuración del servicio TCP y de los extremos TCP MEX para que utilicen puertos diferentes.
2. Habilite el uso compartido de puertos para el objeto TcpTransportBindingElement del extremo TCP MEX. En el siguiente código se ilustra este proceso:
ServiceMetadataBehavior mexBehavior = new ServiceMetadataBehavior();
host.Description.Behaviors.Add(mexBehavior);
Binding mexBinding = MetadataExchangeBindings.CreateMexTcpBinding();
CustomBinding mexBinding2 = new CustomBinding(mexBinding);
mexBinding2.Elements.Find<TcpTransportBindingElement>().PortSharingEnabled = true;
host.AddServiceEndpoint(typeof(IMetadataExchange), mexBinding2, mexAddress);
4.11 Mensajes de error > 64 KB puede producir un error ProtocolException
Cuando el tamaño MaxBufferSize tiene como mínimo el valor Int.MaxValue – 1024 bytes (2147482623 bytes), enviar un mensaje de error de más de 64 KB hace que el cliente reciba un error ProtocolException en vez de uno FaultException. Para transferencias almacenadas en búfer, MaxBufferSize es igual que MaxReceivedMessageSize. Esto sólo afecta a los servicios que utilizan un transporte HTTP(S).
Para solucionar este problema, establezca el valor de MaxBufferSize (MaxReceivedMessageSize) en Int.MaxValue – 1025 bytes (2147482622 bytes) o en un valor inferior. Como alternativa, puede establecer directamente el valor de HttpWebRequest.DefaultMaximumErrorResponseLength en el límite que desee. Si establece el valor DefaultMaximumErrorResponseLength, todos los canales del mismo dominio de la aplicación se verán afectados.
4.12 No se pueden utilizar EncryptBeforeSign y XmlSerializerFormatAttribute en el mismo contrato
La seguridad de mensajes con la orden de protección EncryptBeforeSign no funciona correctamente si en el contrato se utiliza XmlSerializerFormatAttribute. Si se utilizan ambos, WCF crea mensajes con contenido de texto no válido después del descifrado: se genera una instrucción <?xml ..> de procesamiento adicional antes del primer elemento de texto.
Para evitar este problema, no utilice EncryptBeforeSign con XmlSerializerFormatAttribute en el mismo contrato.
4.13 No se pueden hospedar canales de WS-ReliableMessaging utilizando diferentes versiones de WS-Addressing
Un AppDomain no puede hospedar canales WS-ReliableMessaging que utilicen diferentes versiones de WS-Addressing. En estos escenarios, el primer canal activo dictará la versión de encabezados de la acción de WS-Addressing para todos los mensajes de protocolo subsiguientes, incluso si esos mensajes se enviaron a través de un canal configurado para utilizar una versión diferente del protocolo de dirección.
Si necesita que una aplicación o servicio únicos creen canales de WS-ReliableMessaging que utilicen versiones diferentes de WS-Addressing, utilice un AppDomain independiente para cada uno de ellos. Cuando un servicio de WCF está hospedado en Web, necesitará utilizar dos directorios virtuales, uno que hospede los servicios con extremos de WS-Addressing 1.0 y el otro con extremos de WS-Addressing de agosto de 2004.
<system.webServer>
<modules>
<add name="WorkflowHost" type="System.Workflow.Runtime.Hosting.WorkflowWebHostingModule, System.Workflow.Runtime, Version=3.0.00000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="runtimeVersionv2.0" />
</modules>
</system.webServer> |
No puede agregar un servicio ExternalDataExchangeService a varias instancias de WorkflowRuntime. Cada vez que se cree una nueva instancia de WorkflowRuntime, se debe crear un nuevo servicio ExternalDataExchangeService y cualquier servicio de comunicación local se debe agregar de nuevo al servicio ExternalDataExchangeService.
Si crea una actividad compuesta personalizada que contiene una actividad secundaria que implementa ICompensatable y una actividad CompensateActivity que compensa la actividad compuesta, pero no la actividad secundaria explícitamente, la compensación producirá un error con excepciones si la actividad personalizada está colocada en un flujo de trabajo.
Para evitar este problema, debe encapsular todas las actividades secundarias de una actividad personalizada en una actividad CompensatableSequenceActivity e implementar la compensación en esa actividad CompensatableSequenceActivity.
Si una solución tiene varios proyectos, los directorios de proyecto se deben colocar al mismo nivel entre ellos. Si cambia la estructura del proyecto de modo que un proyecto tenga su raíz bajo otro directorio de proyecto, es posible que vea errores de compilación de marcado inesperados durante el proceso de Rebuild que indiquen que no se pudo encontrar un tipo en un archivo DLL (de uno de los proyectos dependientes) al que se hace referencia.
Las soluciones son: