REVISIÓN: No se puede abrir un archivo que es de al menos 4 GB para anexar o escribir datos mediante una aplicación de Visual C++ 2010

Síntomas

Imagine el siguiente escenario:

  • Crear una aplicación de Microsoft Visual C++ 2010.

  • Utilice la función fopen() en la aplicación para abrir un archivo, y la función utiliza el modo de acceso r +o a + .

  • Ejecute la aplicación y el applicationtries para abrir un archivo que es igual o mayor que 4 gigabytes (GB).


En este escenario, el archivo no se abre o se devolvió el siguiente error:

EINVAL (argumento no válido)

Causa

Este problema se produce debido a la forma en que busca la función fopen() para los extremos de archivos una vez que se abre los archivos para anexar. La función fopen() utiliza internamente la función _lseek() para realizar esta acción. Sin embargo, la función _lseek() no puede tratar los archivos que son iguales o superiores a 4 GB.

Solución

Esta revisión cambia el comportamiento de la familia fopen() de funciones. Después de aplicar esta revisión, la función fopen() internamente utiliza una función que puede buscar más allá del límite de 4 GB sin devolver un error. Específicamente, la función fopen() utiliza la función _lseeki64() en lugar de la función _lseek() .

Información de la revisión

Ahora hay una revisión compatible de Microsoft. Sin embargo, se pretende corregir el problema que describe este artículo. Aplíquela sólo a sistemas que experimenten este problema específico.

Para resolver este problema, póngase en contacto con los servicios de soporte técnico de Microsoft para obtener la revisión. Para obtener una lista completa de números de teléfono de los servicios de soporte al cliente de Microsoft e información acerca de los costos de soporte técnico, visite el siguiente sitio Web de Microsoft:

http://support.microsoft.com/contactus/?ws=supportNota: En casos especiales, los costos derivados normalmente de las llamadas al soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con la actualización en cuestión.

Requisitos previos

Para aplicar este hotfix, debe tener Microsoft Visual Studio 2010 Service Pack 1 (SP1) instalado.

Requisito de reinicio

Tendrá que reiniciar el equipo después de instalar esta revisión si se utilizan los archivos afectados.

Información de reemplazo de revisión

Esta revisión no sustituye a ninguna revisión publicada previamente.

Información de archivo



La versión global de este tiene los atributos de archivo (o atributos de último archivo) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.

Para todas las versiones compatibles de Microsoft Visual Studio 2010 SP1

Nombre del archivo

Versión del archivo

Tamaño de archivo

Fecha

Hora

Plataforma

Mfcm100.dll

10.0.40219.362

82,696

15-Nov-2011

22:32

x86

Mfcm100d.dll

10.0.40219.362

104,720

16-Nov-2011

00:29

x86

Mfcm100u.dll

10.0.40219.362

82,704

15-Nov-2011

22:32

x86

Mfcm100ud.dll

10.0.40219.362

106,256

16-Nov-2011

00:29

x86

Mfcm100.dll

10.0.40219.362

93,960

15-Nov-2011

21:54

x64

Mfcm100d.dll

10.0.40219.362

120,592

15-Nov-2011

23:56

x64

Mfcm100u.dll

10.0.40219.362

93,968

15-Nov-2011

21:54

x64

Mfcm100ud.dll

10.0.40219.362

122,128

15-Nov-2011

23:56

x64

Mfcmifc80.dll

10.0.40219.362

14.096

16-Nov-2011

21:26

x86


Más información

Para obtener más información acerca de otro paquete de hotfix que se aplica al paquete redistribuible de Microsoft Visual C++ 2010 Service Pack 1 (SP1), haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

CORREGIR 2606060 : no se puede abrir un archivo que es de al menos 4 GB para anexar o escribir datos mediante una aplicación que utiliza el paquete redistribuible de Visual C++ 2010


Para obtener más información acerca de las funciones fopen() y _wfopen() , visite el siguiente sitio Web MSDN:

Información general acerca de las funciones fopen() y _wfopen()

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×