REVISIÓN: En un equipo que ejecuta .NET Framework 3.5 Service Pack 1, el compilador JIT y Native Image Generator (Ngen.exe) que utilicen el archivo mscorjit.dll pueden generar código incorrecto

Seleccione idioma Seleccione idioma
Id. de artículo: 957542 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

En un equipo que está ejecutando Microsoft .NET Framework 3.5 Service Pack 1 (SP1), el compilador de (JIT) just-in-time y Native Image Generator (Ngen.exe) que utilicen el archivo mscorjit.dll pueden generar código incorrecto. Por lo tanto, una aplicación de C++ administrado de 32 bits puede producir resultados incorrectos.

El problema se produce cuando se cumplen las condiciones siguientes:
  • La estructura o la clase en el código fuente tiene menos de cuatro variedades escalares y no referencias de objeto administrado.
  • Utilice la instrucción máquina Cpblk o la instrucción Initblk.
Nota Este problema no se produce en una aplicación de 64 bits.

Causa

Este problema se produce debido a una regresión en .NET Framework 3.5 SP1.

Solución

Información de revisiones

Hay una revisión compatible de Microsoft. Sin embargo, esta revisión se diseñó para corregir el problema descrito en este artículo. Aplíquela sólo a los sistemas que experimenten este problema específico. Esta revisión podría sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la siguiente actualización de software que contenga este hotfix.

Para descargar esta revisión desde MSDN Code Gallery, visite el siguiente sitio Web de Microsoft:
http://code.msdn.microsoft.com/KB957542

Nota MSDN Code Gallery muestra los idiomas para que la revisión está disponible. Si no ve su idioma aparecen, es porque la página de recursos de galería de código no está disponible para ese idioma.

Nota Si se producen problemas adicionales o si cualquier solución de problemas es necesario, quizás tenga que crear una solicitud de servicio independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con esta revisión específica. Para obtener una lista completa de números de teléfono de servicio de atención al cliente y soporte técnico o para crear una solicitud de servicio independiente, visite el siguiente sitio Web:
http://support.microsoft.com/contactus/?ws=support
Nota Si tiene una aplicación de 32 bits que se ejecuta en una plataforma de 64 bits, aplicar la revisión para la versión de 64 bits resolver este problema.

Requisitos previos

Debe tener para aplicar este hotfix instalado .NET Framework 3.5 SP1.

Requisito de reinicio

Quizás tenga que reiniciar el equipo si se utilizan los archivos que están actualizados.

Información acerca de la sustitución de la revisión

Este hotfix no sustituye a otros hotfix.

Información de archivo

La versión en inglés de este hotfix tiene los atributos de archivo (o atributos de último archivo) mostrados en la siguiente tabla. Las fechas y las horas de estos archivos se muestran en hora universal coordinada (UTC). La información de los archivos se convertirá a la hora local cuando la vea. Para averiguar la diferencia entre hora UTC y la hora local, utilice la ficha zona horaria el elemento fecha y hora en el panel de control.
Windows 2000, Windows XP y Windows Server 2003, versiones x 86
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempo
Mscordacwks.dll2.0.50727.3068992,26416 De septiembre de 200813: 13
Mscorjit.dll2.0.50727.3068367,10416 De septiembre de 200813: 13
Mscorlib.dll2.0.50727.30684,546,56016 De septiembre de 200813: 13
Mscorwks.dll2.0.50727.30685,815,80816 De septiembre de 200813: 13
Windows 2000, Windows XP y Windows Server 2003, versiones x 64
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Mscordacwks.dll2.0.50727.3068992,26416 De septiembre de 200813: 13x 86
Mscorjit.dll2.0.50727.3068367,10416 De septiembre de 200813: 13x 86
Mscorlib.dll2.0.50727.30684,546,56016 De septiembre de 200813: 13x 86
Mscorwks.dll2.0.50727.30685,815,80816 De septiembre de 200813: 13x 86
Mscordacwks.dll2.0.50727.30681,767,94416 De septiembre de 200810: 33x 64
Mscorjit.dll2.0.50727.30681,580,03216 De septiembre de 200810: 33x 64
Mscorlib.dll2.0.50727.30684,562,94416 De septiembre de 200810: 33x 64
Mscorwks.dll2.0.50727.306810,079,74416 De septiembre de 200810: 33x 64
Windows 2000, Windows XP y Windows Server 2003, versiones IA-64
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Mscordacwks.dll2.0.50727.3068992,26416 De septiembre de 200813: 13x 86
Mscorjit.dll2.0.50727.3068367,10416 De septiembre de 200813: 13x 86
Mscorlib.dll2.0.50727.30684,546,56016 De septiembre de 200813: 13x 86
Mscorwks.dll2.0.50727.30685,815,80816 De septiembre de 200813: 13x 86
Mscordacwks.dll2.0.50727.30683,087,88016 De septiembre de 200810: 44IA-64
Mscorjit.dll2.0.50727.30682,560,51216 De septiembre de 200810: 44IA-64
Mscorlib.dll2.0.50727.30684,005,88816 De septiembre de 200810: 44IA-64
Mscorwks.dll2.0.50727.306820,153,85616 De septiembre de 200810: 44IA-64
Windows Vista Service Pack 1 (SP1) y Windows Server 2008, versiones x 86
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Mscorlib.resources.dll2.0.50727.3053352,25615 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053303,10415 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053315,39227-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053425,98415 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053307.20027-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053311,29627-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053331,77615 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053315,39215 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053307.20027-Jul-200817: 55x 86
Mscorlib.resources.dll2.0.50727.3053348,16027-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053319,48827-Jul-200817: 55x 86
Mscorlib.resources.dll2.0.50727.3053290,81615 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053303,10415 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053311,29615 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053303,10427-Jul-200817: 55x 86
Mscorlib.resources.dll2.0.50727.3053307.20015 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.1434397,31211 De enero de 200822: 59x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 55x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 55x 86
Big5.nlpNo aplicable66,72818 De diciembre de 200703: 21No aplicable
Bopomofo.nlpNo aplicable82,17218 De diciembre de 200703: 21No aplicable
Ksc.nlpNo aplicable116,75618 De diciembre de 200721: 04No aplicable
Mscorlib.dll2.0.50727.30684,546,56001 De octubre de 200822: 27x 86
Normidna.nlpNo aplicable59,34218 De diciembre de 200721: 05No aplicable
Normnfc.nlpNo aplicable45,79418 De diciembre de 200721: 05No aplicable
Normnfd.nlpNo aplicable39,28418 De diciembre de 200721: 05No aplicable
Normnfkc.nlpNo aplicable66,38418 De diciembre de 200721: 05No aplicable
Normnfkd.nlpNo aplicable60,29418 De diciembre de 200721: 05No aplicable
Prc.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Prcp.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Sortkey.nlpNo aplicable262,14818 De diciembre de 200721: 05No aplicable
Sorttbls.nlpNo aplicable20,32018 De diciembre de 200721: 05No aplicable
Xjis.nlpNo aplicable28,28818 De diciembre de 200721: 05No aplicable
Mscordacwks.dll2.0.50727.3068992,26401 De octubre de 200822: 27x 86
Mscorjit.dll2.0.50727.3068367,10424 De septiembre de 200822: 21x 86
Mscorwks.dll2.0.50727.30685,815,80801 De octubre de 200822: 27x 86
Windows Vista SP1 y Windows Server 2008, versiones x 64
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Big5.nlpNo aplicable66,72818 De diciembre de 200721: 01No aplicable
Bopomofo.nlpNo aplicable82,17218 De diciembre de 200721: 01No aplicable
Ksc.nlpNo aplicable116,75618 De diciembre de 200721: 02No aplicable
Mscorlib.dll2.0.50727.30684,562,94401 De octubre de 200822: 25x 64
Normidna.nlpNo aplicable59,34218 De diciembre de 200703: 21No aplicable
Normnfc.nlpNo aplicable45,79418 De diciembre de 200703: 21No aplicable
Normnfd.nlpNo aplicable39,28418 De diciembre de 200703: 21No aplicable
Normnfkc.nlpNo aplicable66,38418 De diciembre de 200703: 21No aplicable
Normnfkd.nlpNo aplicable60,29418 De diciembre de 200703: 21No aplicable
Prc.nlpNo aplicable83,74818 De diciembre de 200703: 21No aplicable
Prcp.nlpNo aplicable83,74818 De diciembre de 200703: 21No aplicable
Sortkey.nlpNo aplicable262,14818 De diciembre de 200703: 21No aplicable
Sorttbls.nlpNo aplicable20,32018 De diciembre de 200703: 21No aplicable
Xjis.nlpNo aplicable28,28818 De diciembre de 200703: 21No aplicable
Mscordacwks.dll2.0.50727.30681,767,94401 De octubre de 200822: 25x 64
Mscorjit.dll2.0.50727.30681,580,03224 De septiembre de 200823: 06x 64
Mscorwks.dll2.0.50727.306810,079,74401 De octubre de 200822: 25x 64
Mscorlib.resources.dll2.0.50727.3053352,25615 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053303,10415 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053315,39227-Jul-200818: 02x 86
Mscorlib.resources.dll2.0.50727.3053425,98415 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053307.20027-Jul-200818: 02x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053311,29627-Jul-200818: 02x 86
Mscorlib.resources.dll2.0.50727.3053331,77615 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053315,39215 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053307.20027-Jul-200817: 56x 86
Mscorlib.resources.dll2.0.50727.3053348,16027-Jul-200818: 02x 86
Mscorlib.resources.dll2.0.50727.3053319,48827-Jul-200817: 56x 86
Mscorlib.resources.dll2.0.50727.3053290,81615 De septiembre de 200822: 26x 86
Mscorlib.resources.dll2.0.50727.3053303,10415 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053311,29615 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053303,10427-Jul-200817: 56x 86
Mscorlib.resources.dll2.0.50727.3053307.20015 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.1434397,31211 De enero de 200822: 59x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053299,00815 De septiembre de 200822: 25x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 56x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 56x 86
Big5.nlpNo aplicable66,72818 De diciembre de 200703: 21No aplicable
Bopomofo.nlpNo aplicable82,17218 De diciembre de 200703: 21No aplicable
Ksc.nlpNo aplicable116,75618 De diciembre de 200721: 04No aplicable
Mscorlib.dll2.0.50727.30684,546,56001 De octubre de 200822: 27x 86
Normidna.nlpNo aplicable59,34218 De diciembre de 200721: 05No aplicable
Normnfc.nlpNo aplicable45,79418 De diciembre de 200721: 05No aplicable
Normnfd.nlpNo aplicable39,28418 De diciembre de 200721: 05No aplicable
Normnfkc.nlpNo aplicable66,38418 De diciembre de 200721: 05No aplicable
Normnfkd.nlpNo aplicable60,29418 De diciembre de 200721: 05No aplicable
Prc.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Prcp.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Sortkey.nlpNo aplicable262,14818 De diciembre de 200721: 05No aplicable
Sorttbls.nlpNo aplicable20,32018 De diciembre de 200721: 05No aplicable
Xjis.nlpNo aplicable28,28818 De diciembre de 200721: 05No aplicable
Mscordacwks.dll2.0.50727.3068992,26401 De octubre de 200822: 27x 86
Mscorjit.dll2.0.50727.3068367,10424 De septiembre de 200822: 21x 86
Mscorwks.dll2.0.50727.30685,815,80801 De octubre de 200822: 27x 86
Windows Vista SP1 y Windows Server 2008, versiones IA-64
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño del archivoFechaTiempoPlataforma
Big5.nlpNo aplicable66,72818 De diciembre de 200721: 06No aplicable
Bopomofo.nlpNo aplicable82,17218 De diciembre de 200721: 06No aplicable
Ksc.nlpNo aplicable116,75618 De diciembre de 200721: 06No aplicable
Mscorlib.dll2.0.50727.30684,005,88801 De octubre de 200822: 26IA-64
Normidna.nlpNo aplicable59,34218 De diciembre de 200721: 08No aplicable
Normnfc.nlpNo aplicable45,79418 De diciembre de 200721: 08No aplicable
Normnfd.nlpNo aplicable39,28418 De diciembre de 200721: 08No aplicable
Normnfkc.nlpNo aplicable66,38418 De diciembre de 200721: 08No aplicable
Normnfkd.nlpNo aplicable60,29418 De diciembre de 200721: 08No aplicable
Prc.nlpNo aplicable83,74818 De diciembre de 200721: 08No aplicable
Prcp.nlpNo aplicable83,74818 De diciembre de 200721: 08No aplicable
Sortkey.nlpNo aplicable262,14818 De diciembre de 200721: 08No aplicable
Sorttbls.nlpNo aplicable20,32018 De diciembre de 200721: 08No aplicable
Xjis.nlpNo aplicable28,28818 De diciembre de 200721: 08No aplicable
Mscordacwks.dll2.0.50727.30683,087,88001 De octubre de 200822: 26IA-64
Mscorjit.dll2.0.50727.30682,560,51224 De septiembre de 200823: 14IA-64
Mscorwks.dll2.0.50727.306820,153,85601 De octubre de 200822: 26IA-64
Mscorlib.resources.dll2.0.50727.3053315,39227-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053311,29627-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053348,16027-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053319,48827-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 58x 86
Mscorlib.resources.dll2.0.50727.3053278,52827-Jul-200817: 59x 86
Big5.nlpNo aplicable66,72818 De diciembre de 200703: 21No aplicable
Bopomofo.nlpNo aplicable82,17218 De diciembre de 200703: 21No aplicable
Ksc.nlpNo aplicable116,75618 De diciembre de 200721: 04No aplicable
Mscorlib.dll2.0.50727.30684,546,56001 De octubre de 200822: 27x 86
Normidna.nlpNo aplicable59,34218 De diciembre de 200721: 05No aplicable
Normnfc.nlpNo aplicable45,79418 De diciembre de 200721: 05No aplicable
Normnfd.nlpNo aplicable39,28418 De diciembre de 200721: 05No aplicable
Normnfkc.nlpNo aplicable66,38418 De diciembre de 200721: 05No aplicable
Normnfkd.nlpNo aplicable60,29418 De diciembre de 200721: 05No aplicable
Prc.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Prcp.nlpNo aplicable83,74818 De diciembre de 200721: 05No aplicable
Sortkey.nlpNo aplicable262,14818 De diciembre de 200721: 05No aplicable
Sorttbls.nlpNo aplicable20,32018 De diciembre de 200721: 05No aplicable
Xjis.nlpNo aplicable28,28818 De diciembre de 200721: 05No aplicable
Mscordacwks.dll2.0.50727.3068992,26401 De octubre de 200822: 27x 86
Mscorjit.dll2.0.50727.3068367,10424 De septiembre de 200822: 21x 86
Mscorwks.dll2.0.50727.30685,815,80801 De octubre de 200822: 27x 86

Solución

Para evitar este problema, utilice uno de los métodos siguientes.

Método 1

Si el código de la aplicación se parece del código de ejemplo en la sección "Más información", busque la siguiente línea de código.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x))
cambie esta línea de código como sigue.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d)))

Método 2

Implementar un archivo. ini. Para ello, cree un archivo que contiene el código siguiente.
[.NET Framework Debugging Control]
AllowOptimize=0
Nombre del archivo .ini el mismo que el módulo problemático, pero utilizar la extensión de .ini en lugar de la extensión .dll. Por ejemplo, el código de ejemplo en la sección "Más información", nombre del archivo .ini el archivo Bug.ini. Coloque el archivo Bug.ini en el mismo directorio que el archivo Bug.dll.

Nota El inconveniente de este método es el efecto de rendimiento potencial para sin optimizaciones. Si utiliza el generador de imágenes nativas (Ngen.exe) para precompilar el módulo, este método no es aplicable.

Método 3

Aplique selectivamente la opción de NoOptimization de la enumeración MethodImplOptions a los métodos problemáticos utilizando la clase MethodImplAttribute .

Nota Este método deshabilita las optimizaciones para el compilador JIT y Native Image Generator (Ngen.exe) en un nivel por el método. Cuánto es afectado el rendimiento varía según el método.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Más información

Pasos para reproducir el problema

  1. Crear una aplicación de C++ que se basa en .NET Framework 3.5 SP1.
  2. Agregar un archivo .cpp al proyecto, asigne un nombre este archivo al archivo Bug.cpp y, a continuación, pegue el código siguiente en el archivo Bug.cpp.
    #using <mscorlib.dll>
    #include <stdlib.h>
    class AcGeVector3d
    {
    double x, y, z;
    public:
    __forceinline AcGeVector3d(const AcGeVector3d& src): x(src.x),y(src.y),z(src.z)
    {
    }
    __forceinline AcGeVector3d(double xx, double yy, double zz) : x(xx),y(yy),z(zz)
    {
    }
    __forceinline AcGeVector3d operator / (double val) const
    {
    return AcGeVector3d (x/val, y/val, z/val);
    }
    };
    #define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x)))
    namespace Geometry
    {
    [System::Runtime::InteropServices::StructLayout(System::Runtime::InteropServices::LayoutKind::Sequential)]
    public value class Vector3d
    {
    internal:
    double m_x, m_y, m_z;
    Vector3d(const AcGeVector3d* obj)
    {
    GETVECTOR3D(*this) = *obj;
    }
    public:
    Vector3d(double x, double y, double z):m_x(x),m_y(y), m_z(z) {}
    Vector3d DivideBy(double value)
    {
    return Vector3d(&GETVECTOR3D(*this).operator /(value));
    }
    virtual System::String^ ToString() override
    {
    return System::String::Format("{0}, {1}, {2}", m_x, m_y, m_z);
    }
    };
    }
    
  3. Para compilar el archivo Bug.cpp, ejecute el comando siguiente:
    cl /clr /GL/O2 bug.cpp /link /dll /out:bug.dll
  4. Cree un nuevo proyecto de Microsoft Visual C# para utilizarse como el proyecto de cliente.
  5. Nombre del archivo de código en el archivo Test.cs y, a continuación, pegue el código siguiente en el archivo Test.cs.
    using Geometry;
    namespace Test
    {
    class Tester
    {
    static void Main()
    {
    Vector3d v = new Vector3d(200, 200, 0);
    v = v.DivideBy(150);
    System.Console.WriteLine("{0}", v);
    }
    }
    }
    
  6. Para compilar el archivo Test.cs, ejecute el comando siguiente:
    csc /r:bug.dll test.cs
  7. Para incrustar el manifiesto en el archivo prueba.exe, ejecute el comando siguiente:
    MT.exe - nologo - bug.dll.manifest manifiesto - outputresource:test.exe;1
  8. Ejecute el archivo prueba.exe.
Observe que el resultado real es como sigue:
1.33333333333333 1.333333333333, 0
Sin embargo, el resultado esperado es como sigue:
1.33333333333333, 0, 0

Referencias

Para obtener más información acerca de la terminología relativa de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 957542 - Última revisión: miércoles, 22 de octubre de 2008 - Versión: 1.1
La información de este artículo se refiere a:
  • Microsoft .NET Framework 3.5 Service Pack 1
Palabras clave: 
kbmt kbexpertiseadvanced kbfix kbqfe kbhotfixserver KB957542 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 957542

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com