Microsoft .NET Framework 3.0

Nota   Para obtener los mejores resultados, instálelo en un equipo que no haya tenido instalado ninguna versión preliminar de .NET Framework 3.0. Si el equipo tiene instalada una versión preliminar, debe quitarla en el orden correcto para asegurar la correcta desinstalación. Siga estas Instrucciones de desinstalación para desinstalar los bits de la versión preliminar antes de instalar esta versión. Consulte también la sección 2.8 de esta página para obtener información adicional sobre los sistemas con versiones preliminares de Framework.

Contenido

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 

 

1. Requisitos del sistema para instalar .NET Framework 3.0

Procesador Mínimo:
  • procesador de tipo Pentium a 400 megahercios (MHz).

Opción recomendada:

  • procesador de tipo Pentium a 1 gigahercio (GHz).
Sistema operativo .NET Framework 3.0 puede instalarse en cualquiera de los siguientes sistemas:
  • Service Pack 1 (SP1) de Microsoft Windows 2003 Server
  • Windows XP SP2
  • Windows Vista *

*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:
  • 96 megabytes (MB)

Opción recomendada:

  • 256 MB
Disco duro pueden ser necesarios hasta 500 MB de espacio disponible.
Unidad de CD o DVD No es necesaria.
Pantalla Mínimo:
  • 800 x 600, 256 colores.

Opción recomendada:

  • 1024 x 768, color de alta densidad de 32 bits.
Mouse (ratón) No es necesario

Unidad de instalación

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.

 

2. .NET Framework 3.0: problemas de instalación conocidos

2.1 Error al descargar e instalar .NET Framework 3.0.

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.

 

2.2 Las aplicaciones antivirus configuradas para limpiar la carpeta Temp pueden producir un error en el programa de instalación si éste tiene que reiniciarse.

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.

 

2.3 El inicio del modo de mantenimiento desde Agregar o quitar programas puede tardar varios minutos y puede dar la impresión de que se ha producido un error de instalació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.

 

2.4 No hay ninguna entrada en Agregar o quitar programas para desinstalar Windows Workflow Foundation.

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

 

2.5 Es posible que la instalación de .NET Framework 3.0 sobrescriba la versión localizada de MSXML6

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.

 

2.6 Error de instalación al instalar paquetes de .NET Framework 3.0 en Vista

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.

 

2.7 Posibles problemas al actualizar desde una versión preliminar de .NET Framework 3.0 (anteriormente WinFX 3.0)

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.

  1. Haga clic en Inicio.
  2. Haga clic en Todos los programas.
  3. Haga clic en Accesorios.
  4. Haga clic en Símbolo del sistema.
  5. En el símbolo del sistema escriba:
    sc delete “InfoCard Service”
  6. Reinicie el equipo.
  7. Reinicie la instalación de .NET Framework 3.0.

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.

3. Pasos para la solución de problemas relacionados con errores de descarga

3.1 Servicio de transferencia inteligente en segundo plano (BITS) deshabilitado

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

  1. En el menú Inicio, haga clic en Ejecutar.
  2. En el cuadro de diálogo Ejecutar, escriba services.msc y, a continuación, haga clic en Aceptar.
  3. En la lista de servicios, haga clic con el botón secundario en Servicio de transferencia inteligente en segundo plano y, a continuación, haga clic en Propiedades.
    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.
  4. En la lista Tipo de inicio, seleccione Manual y, a continuación, haga clic en Aceptar.

Si estos pasos no resuelven el problema, quizá deba habilitar los servicios de los que depende BITS.

Para habilitar dependencias

  1. Siga los pasos del 1 al 3 citados anteriormente.
  2. En el cuadro de diálogo Propiedades de Servicio de transferencia inteligente en segundo plano, haga clic en la ficha Dependencias.
  3. Para cada uno de los servicios citados en Este servicio depende de los siguientes componentes del sistema, siga los pasos 3 y 4 citados anteriormente para habilitar el servicio.

 

3.2 Errores de configuración

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.

 

3.3 Errores de red

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.

 

3.4 Errores de disco

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.

 

3.5 Errores del servidor proxy

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:

  1. En Internet Explorer, haga clic en Herramientas y, a continuación, haga clic en Opciones de Internet.
  2. Haga clic en la ficha Conexiones y, a continuación, haga clic en Configuración de LAN.
  3. En Servidor proxy, desactive Utilizar un servidor proxy para su LAN. Esta configuración no se aplicará a conexiones de acceso telefónico o de redes privadas virtuales (VPN) y, a continuación, haga clic en Aceptar.
  4. Haga clic Aceptar de nuevo.

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.

 

3.6 Otros errores

El servicio BITS no se ejecuta en:

Para resolver este problema

No hay solución. No se admiten estos escenarios.

 

4. Problemas conocidos de Windows Communication Foundation (WCF)

4.1 Se requiere Windows HotFix en Windows XP y Windows Server 2003 para utilizar WS-AtomicTransaction y la funcionalidad de integración COM+
La compatibilidad con WS-AtomicTransaction y con la funcionalidad de integración COM+ de WCF requiere la revisión (hotfix) de Windows (QFE) para que funcione en Windows XP y Windows Server 2003. Puede instalar la revisión desde el sitio http://go.microsoft.com/fwlink/?linkid=46976.

4.2 Es posible que el código de C++ administrado creado mediante la herramienta SvcUtil.exe no se compile
Puede utilizar la herramienta SvcUtil.exe para generar código para servidores proxy de servicios Web y tipos de datos a partir de metadatos. No obstante, existen problemas conocidos con el proveedor de código de C++ en Visual Studio 2005 y en .NET Framework 2.0 SDK que hacen que la herramienta genere código de C++ administrado que puede no compilarse. Estos problemas con el proveedor de código de C++ se tratarán en una futura versión de Visual Studio 2005.

4.3 Compatibilidad de idioma de generación de código en SvcUtil.exe
SvcUtil.exe puede generar código para servidores proxy de servicios Web y tipos de datos a partir de metadatos en cualquier idioma que tenga un proveedor de código administrado. SvcUtil se ha probado con proveedores de código administrado de C#, VB y C++. Otros proveedores de código no se han probado y pueden generar código que no compile o que puede resultar inservible.

4.4 Se puede producir un error al enviar un mensaje a un servicio de cola hospedado en Web cuando QueueTransferProtocol está establecido en “Srmp” o “SecureSrmp”
Las colas que utilizan servicios hospedados en Web contienen “.SVC” en sus nombres para asignarlas a los servicios WCF adecuados. Si instala características de activación de WCF antes de instalar la compatibilidad con HTTP en MSMQ, un problema con la instalación de HTTP en MSMQ hace que las asignaciones del controlador .SVC se copien en el vdir de MSMQ. Por tanto, enviar un mensaje SRMP a colas de este tipo producirá un error.

Existen dos formas de resolver este problema:

1. Instale la compatibilidad con HTTP en MSMQ antes de instalar las características de activación de WCF.

O bien:

1. Elimine las asignaciones del controlador .SVC desde el vdir de MSMQ mediante la consola de administración de IIS.
2. A continuación, actualice las asignaciones .SVC del sitio mediante:
“%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\SMConfigInstaller.exe” /c:install /f:http.

Nota: utilice la ruta de acceso Framework64 en equipos de 64 bits.


4.5 Los canales en cola no producen seguimientos de un extremo a otro
En la actualidad no existe compatibilidad de un extremo a otro para realizar un seguimiento de mensajes entre los canales en cola de MSMQ y WCF. Se trata de un problema conocido.

Para solucionar este problema, correlacione los mensajes de los que se realiza un seguimiento en WCF y MSMQ mediante el identificador de mensaje de MSMQ. De este identificador sí se realiza un seguimiento tanto en WCF como en MSMQ.

4.6 Problemas conocidos al utilizar WMI con NetMsmqBinding y MsmqIntegrationBinding
Cuando se utiliza WMI para inspeccionar las propiedades de MsmqTransportBindingElement y MsmqIntegrationBindingElement, los valores de enumeración de ReceiveErrorHandling y QueueTransferProtocol aparecen como números en vez de como sus valores reales. Se trata de un problema conocido. Para solucionarlo, inspeccione la configuración del valor real establecido para el enlace.

Cuando se utiliza WMI para inspeccionar MsmqTransportBindingElement, se pierden las propiedades MsmqTransportSecurity y TransactedReceiveEnabled. Se trata de un problema conocido.

Cuando se utiliza WMI para inspeccionar MsmqIntegrationTransportBindingElement, se pierden las propiedades MsmqTransportSecurity, TargetSerializationTypes y TransactedReceiveEnabled. Se trata de un problema conocido.

4.7 Los errores de mensajes descartados se registran como mensajes rechazados en Windows Vista
Al utilizar enlaces NetMsmqBinding o MsmqIntegrationBinding con los canales en cola de WCF en MSMQ v4 (Windows Vista), el seguimiento de mensajes descartados se registra incorrectamente como mensajes rechazados. Se trata de un problema conocido.

4.8 El visor de eventos de Windows muestra la identidad del cliente de forma incorrecta cuando se utiliza un certificado de idioma árabe para la autenticación del cliente
Cuando se utiliza un certificado de equipo local [CN=4B4DG4] para la autenticación del cliente en un cliente de Windows en árabe, un problema conocido con el visor de eventos de Windows hace que la identidad del cliente aparezca de manera incorrecta en la entrada de auditoría del Registro de eventos:

ClientIdentity: CN=4B4DG4; 14FDBABD77EA825C391CEC4F830859F72B56009F

En el ejemplo anterior, la cadena “14” forma parte de la huella digital de certificado pero aparece antes del nombre de sujeto del certificado.

4.9 Los daños en la metabase de IIS pueden bloquear 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 los daños en la metabase de IIS puedan 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. El registro de eventos o el registro de la instalación pueden contener el siguiente mensaje de error:
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 want 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.

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.

5. Problemas conocidos de Windows Workflow Foundation

5.1 Servicio Web de flujo de trabajo hospedado en el modo integrado de Internet Information Services (IIS) 7.0

El archivo web.config que genera el sistema de proyecto de Workflow es compatible con el hospedaje en IIS 6.0. No obstante, IIS 7.0, que se incluye con Windows Vista, es compatible con la ejecución de la canalización de ASP.NET en dos modos: modo ISAPI (modo compatible con IIS 6.0) y modo integrado. Para beneficiarse de la nueva funcionalidad de modo integrado, el archivo web.config se debe modificar para que se parezca a lo siguiente:
<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>

5.2 ExternalDataExchangeService no se debe utilizar en varias instancias en tiempo de ejecución de flujo de trabajo

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.

5.3 Los métodos estáticos agregados como controladores de eventos no se serializan correctamente

Cuando se agrega un método estático como un controlador de eventos, éste se serializa como this.Method en vez de como ClassName.Method.

5.4 La compensación produce un error cuando el nombre TargetActivityName de una actividad CompensateActivity es una actividad compuesta personalizada

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.

 

6. Problemas conocidos de Windows Presentation Foundation

6.1 Problema conocido con el sistema de generación de Windows Presentation Foundation para soluciones con varios proyectos y dependencias entre proyectos

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:

  1. Cambie las jerarquías de directorios de los proyectos de la solución, creando directorios de proyecto individuales al mismo nivel entre ellos, o bien,
  2. cuando se enfrente a este problema, siga los procesos de Clean y, a continuación, Build o Rebuild.