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".